2012-05-16 2 views
0

Как бы сделать favicons в Lithium?Как визуализировать значки в литии?

Сейчас у меня есть это в моих макетах:

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

Однако Favicon не отображается. Попытка просмотра ресурса favicon через Chrome Inspector показывает мне сломанное изображение.

Я попытался загрузкой образа с помощью 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] 

Однако, если я ПКППЫ изображения на мой локальный диск и просмотреть его, я могу просмотреть правильную FavIcon изображение в правильном формате ,

Должен ли я настроить настраиваемый тип носителя или что-то еще? Если да, то как бы я сделал это для ресурса, такого как изображение (favicon)? Я предполагаю, что это необязательно, и по умолчанию возможно предоставление значка.

EDIT Я забыл упомянуть, что я могу просмотреть фавиконки через HTTP, когда я его локально (среда разработки), но когда я пытаюсь его удаленно (производственная среда) точки зрения, Favicon не делает, как его просмотра должен.

EDIT 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> 

Спасибо.

EDIT 3 Я создал приложение тест литиевую: http://dev.koobi.co/favicon/

Единственное, что я изменил был файл макета и config/bootstrap/libraries.php

Как вы можете видеть, файл значок Безразлично» t для этого.

+0

Вы проверили журналы доступа/ошибок на удаленном сервере? Они могут дать больше информации о правах доступа и т. Д. Выглядит как проблема с конфигурацией – Oerd

+0

Да, я уже это сделал. Когда я запрашиваю favicon.ico напрямую, я получаю 304, что хорошо. Я думаю, что это связано с тем, как Литий обслуживает файл .ico. Кажется, что, редактируя что-то, я, возможно, изменил это поведение. Я не редактирую ядро, поэтому это что-то в моем приложении ... Я просто не знаю, с чего начать отладку для решения этой проблемы. – Housni

+1

HTTP 304 означает «Не изменено», попробуйте сделать полное обновление или использовать окно инкогнито/приватного просмотра, чтобы загрузить страницу, а затем снова проверить журналы для этого единственного запроса. – Oerd

ответ

0

Оказывается, это была проблема с Hostgator. Литий работал отлично. Очевидно, что правила Hostgators Apache не позволяют динамически визуализировать значки.

0

Нет ничего особенного, что вам нужно. Дважды проверьте, что действительный файл favicon.ico доступен в каталоге webroot /. Литий поставляется с значком, который вы можете использовать.

+0

Значок действителен. Как я упоминал в своем посте, если я загружаю значок, я могу его просмотреть. Но через HTTP изображение кажется сломанным. Кроме того, я забыл упомянуть, что я могу просматривать значок через HTTP локально (разработка env), но не удаленно (production env). Я отредактирую сообщение и добавлю эту информацию. – Housni

+0

Что хорошего для меня отладить? С чего начать? – Housni

Смежные вопросы