Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.
Apache Error: AH02318: File does not exist: /var/www/html/favicon.ico Linux / DevOps

Apache Error AH02318: File does not exist favicon.ico — Отключение спама в логах

Обновлено: 18.08.2026  ·  Официальная база знаний

Системный журнал error.log веб-сервера Apache массово засоряется тысячами сервисных предупреждений об отсутствующих статических файлах: [core:info] [pid 1234:tid 5678] [client ...] AH02318: File does not exist: /var/www/html/favicon.ico или AH02318: File does not exist: /var/www/html/robots.txt.

Запрашиваемый ресурсИнициатор запросаПричина генерации ошибки
/favicon.icoБраузеры пользователейАвтоматический фоновый запрос иконки вкладки сайта
/robots.txtПоисковые краулеры (Googlebot, Yandex)Проверка правил индексации сайта перед парсингом страниц
/apple-touch-icon.pngМобильные устройства iOS/AndroidЗапрос иконки для закладок домашнего экрана
  • Сервер возвращает стандартный статус 404 Not Found.
  • Журнал ошибок переполняется мусорными записями, затрудняя мониторинг реальных критических сбоев бэкенда.
  1. Вариант 1 (Рекомендуемый): Создайте физический файл иконки favicon.ico в корневой директории сайта DocumentRoot:
    sudo touch /var/www/html/favicon.ico
    sudo chown www-data:www-data /var/www/html/favicon.ico
  2. Вариант 2 (Отключение записи в логи): Добавьте в конфигурацию виртуального хоста правила, запрещающие запись в error.log и access.log для отсутствующих служебных файлов:
    # Отключаем логирование запросов к favicon.ico и robots.txt:
    <Files "favicon.ico">
        ErrorDocument 404 ""
        CustomLog /dev/null common
    </Files>
    
    <Files "robots.txt">
        ErrorDocument 404 ""
        CustomLog /dev/null common
    </Files>
  3. Вариант 3 (Через mod_rewrite и 204 No Content): Отдавайте пустой статус 204 для favicon без обращения к диску:
    RewriteEngine On
    RewriteRule ^/favicon\.ico$ - [R=204,L]
  4. Проверьте синтаксис и примените конфигурацию:
    sudo apache2ctl configtest && sudo systemctl reload apache2
Уровни логирования LogLevel: Запись AH02318 выводится на уровне info модуля core. Если вы переведете общий уровень логирования сервера в режим LogLevel warn (дефолтная настройка production), подобные информационные сообщения об отсутствующих файлах перестанут выводиться в error.log автоматически.
Практический опыт инженера: Используйте фильтрацию `SetEnvIf Request_URI` для исключения статических health-check запросов балансировщиков и favicon из `access.log` — это экономит до 30% дискового пространства на высоконагруженных серверах.

Частые вопросы (FAQ)

Влияет ли ошибка AH02318 на работоспособность сайта?

Нет, это стандартный ответ 404, который не влияет на функциональность сайта, но приводит к ненужным операциям ввода-вывода (I/O) и росту размера файлов журналов.

Почему браузер всегда запрашивает /favicon.ico?

Это поведение по умолчанию всех современных браузеров, если в HTML коде страницы явно не указан тег <link rel='icon' href='...'>.

Как вернуть пустую иконку 204 No Content средствами mod_alias?

Используйте директиву Redirect 204 /favicon.ico в конфигурации VirtualHost.

Как отфильтровать favicon из access.log с помощью условий?

Используйте переменную окружения: SetEnvIf Request_URI '^/favicon\.ico$' dontlog и добавьте CustomLog /var/log/apache2/access.log combined env=!dontlog.