favicon не отображается в Firefox
Я DO знаю, что этот вопрос был задан по крайней мере тысячу раз на этом веб-сайте, но я прочитал многие из этих тем, я считаю себя очень знающим и редко когда-либо спрашиваю что-либо, вместо этого предпочитаю делать свои собственные исследования.
однако этот вопрос настолько странный, без надежды на реальное просветление (поскольку этот вопрос обсуждался так часто, и все же я не мог извлечь выгоду из чтения там), вот мой вопрос:
фавикон.ico существует, и (локально размещенный сайт разработки)http://website/favicon.ico
отображает правильный значок. Его размер составляет всего 198 байт, поэтому ограничение размера, которое я нашел в Firefox about:config 1024 байт, соблюдается. По данным мудрости на фавиконку на веб-браузер должен задать для фавиконок по себе, когда нет ничего в этой страницы. Однако мой журнал apache ясно показывает, что Firefox (9.01) даже не просит об этом.
далее: когда я добавить
<link rel="shortcut icon" href="/favicon.ico">
Я все еще не понимаю фавикон.
далее: когда я вместо этого использую
<link rel="shortcut icon" href="/favicon.ico?">
(обратите внимание на завершающий "?") Я вдруг DO сделать фавикон. Но это не может быть проблемой кэша! Во-первых, я очистил кэш, во-вторых, как я уже упоминал выше, я уже успешно загрузил файл значка в Firefox через его URL http://website/favicon.ico
Я не могу объяснить это поведение в Firefox. Хром показывает правильный фавикон, кстати.
это моя страница глава:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="/favicon.ico?" />
</head>
...
как только я добавлю хотя бы "?"после "Ико" работает.
вот что сервер отправляет при запросе значка, так как некоторые просили об этом. я понятия не имею, почему это было бы полезно, Так как a) я сказал, что мой Кэш был пуст для каждого теста (проверено с помощью about:cache too), и b) я сказал, что сервер никогда даже не запрашивал файл, когда он не появляется. Firefox просто не спрашивает без "?- ...с пустым тайником! Запрос появляется в журнале apache только тогда, когда я использую приложение "?".
Date Fri, 23 Dec 2011 12:53:22 GMT
Server Apache/2.2.20 (Ubuntu)
Last-Modified Fri, 23 Dec 2011 12:02:49 GMT
Etag "12c07fe-c6-4b4c132190e30"
Accept-Ranges bytes
Content-Length 198
Content-Type image/x-icon
5 ответов:
во-первых, убедитесь, что у вас нет "нормальной" проблемы с кэшем при загрузке URL-адрес значка напрямую (положить его в адресной строке) и освежая ее. Если это делает работу, нет необходимости в сложном решении ниже.
важно:
моя исходная проблема не может быть проблемой кэша: Во-Первых, Я сделал очистить кэш, во-вторых, как я уже упоминал выше, Я уже успешно загрузил файл значка в Firefox через его URL
http://website/favicon.ico
Я do (did) получить правильный значок в браузере при загрузке напрямую! Но у меня все еще есть (был) неправильный значок, отображаемый как "favicon". Загрузка файла значка напрямую is (или was) независимая дисплея в фактическом местоположении favicon (за исключением того, когда он загружается в первый раз, конечно).
, если вы только есть проблема с кешем и принудительное обновление работает для Вас, чем этот вопрос / проблема не ваша! И ваш ответ не является ответом для этот вопрос.
люди не должны игнорировать факты. Когда вас бомбардируют множеством уже ответивших и / или бесполезных вопросов, качество вопроса страдает на данный момент и для архива тоже. удивительно, как мне приходится бороться с людьми, которые все еще настаивают на том, что силовое обновление - это отвечай!
Примечание: вы можете полностью избежать этой проблемы, используя URL-адрес cache-buster, как и StackOverflow, их URL-адрес favicon заканчивается
.../img/favicon.ico?v=4f32ecc8f43d
.если обычные меры очистки кэша не удается (так же, как они сделали для меня) ответ дается здесь: " Очистка Всех Фавиконов Из Кэша Firefox 3 [How-To]" - и вот archive.org версия ссылки (вероятно, медленнее, но она не пойдет прочь).
шаги с этой страницы воспроизводится здесь:
- установить Firefox add-on SQLite Manager
- запустите его из Tools - > SQLite Manager
- нажмите на пункт меню " база данных "(вверху слева) и выберите" Подключить базу данных", введите
%APPDATA%\Mozilla\Firefox
- открыть
Profiles
папка и перейдите в профиль, который вы используете- выберите
places.sqlite
как файл базы данных для редактирования (Firefox 61 и более поздние версии:favicons.sqlite
)- выбрать
moz_favicons
таблица. Из контекстного меню правой кнопкой мыши используйте "пустая таблица",не используйте "Drop table" (таблица должна быть там)или используйте контекстное меню правой кнопкой мыши над данными и выберите "Удалить" только над одной записью, которую вы хотите удалить (см. скриншот ниже)Я начал подозревать, что Firefox кэширует фавиконы отдельно от всего остального-это было единственное объяснение, соответствующее наблюдаемому поведению. Поэтому я погуглил и нашел по ссылке выше. Затем я попытаюсь очистить этот конкретный дополнительный кэш и посмотреть, что произойдет.
ОБНОВЛЕНИЕ - РЕШЕНО: после удаления кэша favicon с помощью дополнения Firefox" SQLite Manager " все работает как надо.
таким образом, секретом был дополнительный (sqlite) кэш для FAVICONS в Firefox, который не очищается обычным " Clear Cache" команда.
обновление марта 2017: я проверил это дополнение Firefox, а также автономное приложение, предложенное в этом ответе ниже и оба делают свою работу. Надстройка SQLite Manager была в последний раз обновлена ~2 года назад в соответствии с ее страница проекта Github, но он по-прежнему делает то, что нужно в этом контексте. Есть обновления, доступные от люди, которые разветвили проект, но это только в сторону.
вот как это сделать, не теряя все фавиконы
получить инструмент, который может открыть файл SQLite, я использую браузер БД для SQLite
на
about:profiles
в вашем браузере.откройте корневую папку
default profile
. (см. прилагаемое изображение для подсказок)открыть .
на
moz_favicons
таблицаотфильтруйте и удалите запись для вашего имени хоста(см. прикрепленное изображение для подсказок)
посетите ваш сайт он покажет новый фавикон
давно, я знаю, но процедура очистки кэша на FF 31.0/Windows работает для меня - может быть, это новое.
Options -> network -> cached web content -> clear now
. Выключите FF, перезагрузите компьютер. Нет возиться с SqLite, новые загрузки favicon.однако, есть еще одна потенциальная проблема. Сервер для сайта, на котором я пытался обновить значок, имел
DocumentRoot
на/var/www
. Этот сайт был наfoo.com/fubar
, гдеvar/www/fubar
символические ссылки на них где-то еще. Другими словами, сайт находится на один уровень ниже отDocumentRoot
. Это работает для Chrome, Opera и IE, но не Safari или FF:<link rel="shortcut icon" href="/favicon.ico" >
FF ищет фавикон в
/var/www
, вместо/var/www/fubar
. Это работает для всех 5 браузерах:<link rel="shortcut icon" href="favicon.ico" >
столкнулся с аналогичной проблемой. Просто разбейте кэш изображения. Я использую MVC Razor View.
var link = document.createElement('link'); link.type = 'image/x-icon'; link.rel = 'shortcut icon'; link.href = "/images/favicon.ico?t=@DateTime.Now.Ticks"; var head = document.head || document.getElementsByTagName('head')[0]; head.appendChild(link);
У меня была эта проблема только сейчас кажется, что кэш, куки и история не имеют никакого эффекта, но я сделал это, что исправило его.
1-Щелкните правой кнопкой мыши на закладке (мой находится в меню панели инструментов) 2-Нажмите на свойства 3-Затем нажмите на кнопку Отмена (кажется, чтобы обновить некоторые скрытые кэш)
Я уверен, что нажатие ok / save будет иметь тот же эффект.