如何在Lithium中渲染favicon?

时间:2012-05-16 19:02:50

标签: php favicon lithium

我如何在Lithium中渲染favicon?

现在我的布局中有这个:

<?php echo $this->html->link('Icon', null, array('type' => 'icon')); ?>

然而,favicon没有显示出来。尝试通过Chrome Inspector查看favicon资源会向我显示图像已损坏。

我尝试通过HTTP下载图片,图片为空:

$ wget http://example.org/favicon.ico
--2012-05-17 00:13:58--  http://example.org/favicon.ico
Resolving example.org... xx.xx.xx.xxx
Connecting to example.org|xx.xx.xx.xxx|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 0 [image/x-icon]
Saving to: `favicon.ico'

    [ <=>                                                                   ] 0           --.-K/s   in 0s      

2012-05-17 00:13:59 (0.00 B/s) - `favicon.ico' saved [0/0]

但是,如果我将图像scp到我的本地磁盘并查看它,我可以以正确的格式查看正确的图标。

我是否必须设置自定义媒体类型?如果是这样,我将如何为图像(favicon)等资源执行此操作? 我假设这不是必需的,默认情况下可以渲染一个favicon。

修改 我忘了提到我在本地查看它时可以通过HTTP查看favicon(开发环境)但是当我尝试远程查看它(生产环境)时,favicon不能正常渲染。

编辑2 我的重写规则:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !favicon.ico$
    RewriteRule ^ index.php [QSA,L]
</IfModule>

感谢。

编辑3 我已经设置了一个测试Lithium应用程序: http://dev.koobi.co/favicon/

我唯一改变的是布局文件和config/bootstrap/libraries.php

如您所见,图标文件也没有为此加载。

2 个答案:

答案 0 :(得分:0)

你不需要做什么特别的事。 仔细检查webroot /目录中是否有有效的favicon.ico。 Lithium附带一个你可以使用的图标。

答案 1 :(得分:0)

原来这是Hostgator的一个问题。锂电池工作正常。 显然,Hostgator Apache规则不允许动态呈现favicons。