将图像路径重定向到根级别
Redirect an image path to root level
我在子文件夹 Public_html/cake/ 中有一个 cakephp 2.x 网站
我想在不使用 http 或 https
的情况下在根服务器 (public_html) 中显示图像
Public_html/cake/images/logo.png 应该变成 Public_html/images/logo.png
知道如何使用 htaccess 或其他方式制作这个吗?
src="<?php echo $this->webroot;?>images/logo.png
将给予:
Public_html/cake/images/logo.png
我需要成为:
Public_html/images/logo.png
一个文件夹
我不想使用 http,因为该网站将是 http 和 https,如果它包含 http 内容,则会发出安全警告
将此规则作为第一个重定向规则插入根 .htaccess 中:
RewriteEngine On
RewriteRule ^cake/(images/.+)$ / [L,NC,R=301,NE]
这种代码:
src="<?php echo $this->webroot;?>images/logo.png
这不是 CakePHP 项目中模板文件的预期编写方式。有许多 helper classes 使生成 html 标记更容易。
正在生成 img 标签
要生成图片标签,请使用 the Html Helper
Creates a formatted image tag. The path supplied should be relative to
/app/webroot/img/
.
echo $html->image('cake_logo.png', array('alt' => 'CakePHP'));
Will output:
<img src="/img/cake_logo.png" alt="CakePHP" />
与生成 url 的所有方法一样,此方法会考虑应用程序是否安装在子文件夹中,因此无论应用程序安装在 http://example.com
、http://example.com/folder
或 http://localhost/MyProject
等
如果传递的路径以正斜杠开头,则此路径相对于 应用程序的安装位置。在 Public_html
文件夹中安装此代码:
echo $html->image('/images/logo.png');
会生成:
<img src="/Public_html/images/logo.png" alt="" />
只获取 url
要仅获得 url,请使用 the assetUrl method:
// Outputs /img/logo.png
echo $html->assetUrl('logo.png');
这是 HtmlHelper 调用的获取 path/url 以放入图像标签的 src
属性的方法。
常规
CakePHP 希望图像位于名为 img
而不是 images
的文件夹中,这就是 none 的文档与您当前的使用情况完全匹配的原因。
如果您希望将图像保留在原处,您可以通过定义 imageBaseUrl
configuration setting.
配置应用程序,使用法与文档相匹配
我在子文件夹 Public_html/cake/ 中有一个 cakephp 2.x 网站 我想在不使用 http 或 https
的情况下在根服务器 (public_html) 中显示图像Public_html/cake/images/logo.png 应该变成 Public_html/images/logo.png
知道如何使用 htaccess 或其他方式制作这个吗?
src="<?php echo $this->webroot;?>images/logo.png
将给予:
Public_html/cake/images/logo.png
我需要成为:
Public_html/images/logo.png
一个文件夹 我不想使用 http,因为该网站将是 http 和 https,如果它包含 http 内容,则会发出安全警告
将此规则作为第一个重定向规则插入根 .htaccess 中:
RewriteEngine On
RewriteRule ^cake/(images/.+)$ / [L,NC,R=301,NE]
这种代码:
src="<?php echo $this->webroot;?>images/logo.png
这不是 CakePHP 项目中模板文件的预期编写方式。有许多 helper classes 使生成 html 标记更容易。
正在生成 img 标签
要生成图片标签,请使用 the Html Helper
Creates a formatted image tag. The path supplied should be relative to
/app/webroot/img/
.echo $html->image('cake_logo.png', array('alt' => 'CakePHP'));
Will output:
<img src="/img/cake_logo.png" alt="CakePHP" />
与生成 url 的所有方法一样,此方法会考虑应用程序是否安装在子文件夹中,因此无论应用程序安装在 http://example.com
、http://example.com/folder
或 http://localhost/MyProject
等
如果传递的路径以正斜杠开头,则此路径相对于 应用程序的安装位置。在 Public_html
文件夹中安装此代码:
echo $html->image('/images/logo.png');
会生成:
<img src="/Public_html/images/logo.png" alt="" />
只获取 url
要仅获得 url,请使用 the assetUrl method:
// Outputs /img/logo.png
echo $html->assetUrl('logo.png');
这是 HtmlHelper 调用的获取 path/url 以放入图像标签的 src
属性的方法。
常规
CakePHP 希望图像位于名为 img
而不是 images
的文件夹中,这就是 none 的文档与您当前的使用情况完全匹配的原因。
如果您希望将图像保留在原处,您可以通过定义 imageBaseUrl
configuration setting.