22.17. Страницы ошибок
Проблема
При переходе по несуществующей ссылке пользователь сталкивается с простой, минималистичной страницей ошибки 404, предоставляемой Apache:
Not found
The requested URL /foo was not found on this server.
Apache/2.0.50 (Unix) Server at http://bratgrrl.com Port 80
Вы, возможно, хотите, чтобы страница ошибки соответствовала стилю вашего веб-сайта, была дружелюбной и давала пользователю больше информации, чтобы помочь ему вернуться к навигации по сайту.
Решение
Создайте собственную страницу ошибки, например, 404-custom.html
, которая будет оформлена в стиле вашего сайта. Включите в файл httpd.conf
директиву ErrorDocument
с указанием пути к этой странице:
ErrorDocument 404 /error/404-custom.html
По умолчанию страницы ошибок можно размещать в каталоге /error
, но это можно изменить в зависимости от структуры вашего сайта.
Комментарий
Избегайте прямого изменения стандартных страниц ошибок, входящих в комплект поставки Apache. Чтобы найти их, проверьте каталог DocumentRoot
; в большинстве систем они располагаются в каталоге /var/www/error
. Лучше создать свою собственную страницу с нуля, так как стандартные страницы Apache интернационализированы и могут быть полезны для автоматической доставки сообщений об ошибках на языке посетителя. Для этого Apache использует механизм Content Negotiation, позволяющий отображать страницы ошибок на разных языках, если сайт нацелен на международную аудиторию (Раздел 22.20).
Создание персонализированных страниц ошибок
Использование ErrorDocument
позволяет настраивать не только страницу ошибки 404, но и страницы других типов ошибок, например:
ErrorDocument 403 /error/403-custom.html
ErrorDocument 500 /error/500-custom.html
Можно также задать простое текстовое сообщение для некоторых ошибок. Например, для ошибки 403 можно задать сообщение прямо в конфигурации:
ErrorDocument 403 "Доступ запрещён. Пожалуйста, свяжитесь с администратором сайта."
Это удобно для случаев, когда не требуется полноценная страница, а нужно лишь короткое сообщение. Пример можно адаптировать для различных сценариев, подставляя релевантные сообщения, которые будут отображаться непосредственно в браузере пользователя.
Полезные советы по настройке страниц ошибок
- Соблюдайте единый стиль: Старайтесь использовать фирменный стиль вашего сайта при оформлении страниц ошибок. Это поможет пользователю понять, что он всё ещё находится на вашем сайте.
- Добавьте полезные ссылки: На странице ошибки 404 укажите ссылки на главную страницу, карту сайта или популярные разделы, чтобы пользователь мог быстро вернуться к поиску нужной информации.
- Используйте понятные сообщения: Вместо стандартных технических сообщений создайте более дружелюбный текст, поясняющий, почему пользователь оказался на этой странице.
- Проверяйте настройки: После изменений в
httpd.conf
перезапустите сервер Apache, чтобы активировать новые страницы ошибок.
Создание персонализированных страниц ошибок также может положительно сказаться на SEO: поисковые системы, такие как Google, учитывают удобство навигации и качественные страницы ошибок при ранжировании сайта. Такие страницы позволяют пользователю оставаться на сайте, не покидая его из-за неудобства, вызванного переходом на стандартную ошибку 404.
См. также