Нужно ли иметь значок на моем сайте? Как я могу избавиться от ошибок, которые я вижу в своем журнале apache?

Я продолжаю видеть предупреждения favicon в своем журнале apache. Как я могу избавиться от них? У меня должен быть значок для моего сайта?

Ответ 1

/favicon.ico является одним из артефактов Темного времени браузера (примерно 2000). Хотя невозможно предотвратить запросы браузера, создание 0-байтового файла с именем favicon.ico завершает поток 404 ошибок (поскольку файл существует), но браузер не будет показывать favicon для вашего сайта.

Ответ 2

Johan Petersson дает хороший ответ на предотвращение ошибок файла, не найденных без использования значка в http://www.trilithium.com/johan/2005/02/no-favicon/

Размещение следующего кода в разделе виртуального хоста httpd.conf(или везде, где вы определяете среду своего сайта), следует остановить ошибки, появляющиеся в журнале ошибок Apache:

# Don't bother looking for favicon.ico
Redirect 404 /favicon.ico

# Don't bother sending the custom error page for favicon.ico
<Location /favicon.ico>
    ErrorDocument 404 "No favicon
</Location>

В качестве альтернативы вы можете создать пустой файл и называть его favicon.ico, поместив его в корневой каталог сайта.

Ответ 3

Вам не нужно, нет, но некоторые браузеры будут автоматически запрашивать /favicon.ico, поэтому ошибки в значительной степени неизбежны.

Ответ 4

Вам это действительно не нужно, но, как говорили другие, некоторые браузеры будут запрашивать его, даже если он не указан в <link rel="shortcut icon" />.

Я не эксперт, но я немного играл с mod_rewrite, и вот что вы можете сделать:

# turn on the mod_rewrite module
RewriteEngine On
# if requested file is not an existing file
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f 
# and it name is favicon.ico, send an empty 410 GONE response to the browser
RewriteRule .*favicon\.ico$ - [G] 

Я только пробовал это на своем localhost: первый запрос привел к 410, но для всех последующих браузер не запрашивает этот файл, потому что он помнит, что он ушел.

Я не уверен, что вы должны использовать статус 410 GONE, а также то, что он будет работать на 100%.

Ответ 5

Глядя на ваши журналы, вы, вероятно, увидите такие ошибки 404:

  • favicon.ico: Internet Explorer, Chrome...
  • apple-touch-icon.png: устройства iOS, Android, возможно, некоторые другие устройства.
  • apple-touch-icon-precomposed.png: устройства iOS, Android, возможно, некоторые другие устройства.
  • apple-touch-icon-76x76.png: iOS, возможно, некоторые другие устройства
  • apple-touch-icon-120x120.png: iOS, возможно, некоторые другие устройства
  • apple-touch-icon-152x152.png: iOS, возможно, некоторые другие устройства

Если вы абсолютно не хотите добавлять иконку на свой сайт, вы можете применить одно решение, описанное в других ответах:

  • mod_rewrite
  • Force 404
  • Пустое изображение

Однако, значки настолько распространены в наши дни, что вы, вероятно, захотите добавить их на свой сайт. Этот favicon generator создает все эти файлы одновременно. Полное раскрытие: Я создатель этого сайта.

Ответ 6

Веб-браузеры используют это, чтобы отображать изображение, которое вы видите в своих избранных, а также значок вашей вкладки. например когда вы переходите к stackoverflow, значок "cool", который вы видите на вкладке, как показано: alt text автоматически извлекается моим браузером (хром) с помощью URL: https://stackoverflow.com/favicon.ico. Его довольно стандартный, поэтому, если вы не хотите его в своем журнале, вы должны поместить значок и переименовать его как favicon.ico в httpdocs.

Ответ 7

На самом деле это не нужно.

Однако он используется на вашем сайте (предупреждения).

Проверьте источник своего веб-сайта, чтобы узнать, содержит ли он:

<link rel="shortcut icon" href="favicon.ico">

В разделе заголовка страницы.

Удалите эту строку или добавьте значок, чтобы предотвратить появление erros в вашем журнале.