cakephp 1.3 图标
我正在使用 cake 1.3,我尝试实现 favicon..但是发生了一些奇怪的错误,有时它显示 favicon,但有时它不显示它。Pronlem 是 cakephp img 文件夹路径正在更改>我怎样才能摆脱这个问题。
中使用了以下代码
<?php echo $this->Html->meta('favicon.ico','../../app/webroot/img/favicon.ico',array('type' => 'icon'));?>
我在我的 default.ctp Favicon 显示以下网址
http://localhost/finalportal/index.php/events/eventlist
。网站图标未显示以下网址
http://localhost/finalportal/index.php/productsServices
我也尝试过此操作。
<?php echo $this->Html->meta('favicon.ico',/favicon.ico',array('type' => 'icon'));?>
在这种情况下,图标路径不正确
我做错了什么
I am using cake 1.3 and i had tried to implement favicon..But some strang error happens and sometime its showing favicon but for sometimes its not showing it.Pronlem is cakephp img folder path is changing>How can i escape from this problem.
i have used below code in my default.ctp
<?php echo $this->Html->meta('favicon.ico','../../app/webroot/img/favicon.ico',array('type' => 'icon'));?>
Favicon shows for following url.
http://localhost/finalportal/index.php/events/eventlist
Favicon not showing for followin url
http://localhost/finalportal/index.php/productsServices
I had tried this also.
<?php echo $this->Html->meta('favicon.ico',/favicon.ico',array('type' => 'icon'));?>
in this case favicon path is not correct
What i am doing wrong
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
它工作得很好,只需在 img 文件夹中创建 favicon.ico 图像即可。
It works perfectly, just create favicon.ico image in img folder.thats it.
不要在
HtmlHelper
中使用相对路径,Cake 会为您预先设置正确的路径。我没有使用过meta函数,所以我不确定它是否遵守Cake目录约定(例如图像在
img
中,JavaScript在js
中),但是这个应该工作:Don't use relative paths in the
HtmlHelper
, Cake prepends the correct path for you.I haven't use the meta function, so I'm not sure if it respects the Cake directory conventions (e.g. images are in
img
, JavaScripts injs
), but this should work:使用以下代码获得正确的路径。
use following code to get right path.
第一个版本的问题是您使用相对路径,因此它最终总是指向错误的位置,具体取决于 URL 有多少个参数。
../../app/webroot
表示“向下两层,然后到目录 app/webroot”。从http://localhost/finalportal/index.php/events/eventlist
往下两级是http://localhost/finalportal/index.php/
,但是两级从http://localhost/finalportal/index.php/productsServices
下来是http://localhost/finalportal/
,所以你最终到了错误的地方。第二种方法(语法上正确)不起作用的原因可能是因为您的服务器设置错误。 Apache 的
DocumentRoot
应指向 app/webroot 目录或根目录中的 .htaccess 文件应将请求重定向到 app/webroot。The problem in the first version is that you're using relative paths so it will always end up pointing to the wrong place, depending on how many parameters the URL has.
../../app/webroot
means "two levels down, then to directory app/webroot". Two levels down fromhttp://localhost/finalportal/index.php/events/eventlist
ishttp://localhost/finalportal/index.php/
, but two levels down fromhttp://localhost/finalportal/index.php/productsServices
ishttp://localhost/finalportal/
, so you end up in the wrong place.The reason why the second method (which is syntactically correct) doesn't work is probably because you have the server set up wrong. Apache's
DocumentRoot
should point at the app/webroot directory or the .htaccess file in the root directory should redirect requests to app/webroot.