Настройка страницы 404 в .htaccess: примеры

Обработка ошибок на сайте и перенаправление пользователей на специальную страницу (например, при ошибке 404) осуществляется с помощью файла .htaccess. Предполагается, что вы знакомы с его использованием.

Настройка перенаправления в .htaccess

В файле .htaccess прописываются правила перенаправления. Примеры правил:

# Комментарии
# B requ - плохой запрос
# 401 - ошибка 401
# 403 - ошибка 403
# 404 - ошибка 404

Эти правила перенаправляют пользователя на страницу с сообщением об ошибке (например, при попытке открыть несуществующую страницу — ошибка 404). На странице будет сообщение типа «Ошибка 404: такой странички не существует, перейдите на главную».

Пример добавления правила для обработки ошибки 404:

Добавьте в .htaccess следующую строку (комментарии можно не добавлять):

ErrorDocument 404 /404.php

Это перенаправит пользователя на страницу 404.php, если страница не найдена.

Создание и наполнение страницы ошибки 404.php

Создайте файл 404.php. На начальном этапе он может быть пустым. Протестируйте, введя в адресную строку браузера несуществующий адрес. При правильной настройке отобразится 404.php.

Добавьте в 404.php содержимое. Можно использовать стандартный шаблон PHP-страницы, удалив ненужные элементы (мета-теги и формы). Оставьте заголовок и основной текст сообщения об ошибке. Заголовок страницы можно изменить на «Ошибка 404». В основной части отобразите текст сообщения об ошибке: «Ошибка 404». Добавьте ссылку на главную страницу.

Пример кода для страницы 404.php:

<!DOCTYPE html>
<html>
<head>
  <title>Ошибка 404</title>
</head>
<body>
  <h1>Ошибка 404</h1>
  <p>Страница не найдена.</p>
  <p><a href="/">Перейти на главную</a></p>
</body>
</html>

После добавления текста и сохранения изменений обновите страницу.

Обработка других типов ошибок

Аналогично создаются страницы для других ошибок, например, 504 (слишком много времени прошло, сайт не загрузился) или 507.

В этом руководстве описано создание страниц обработки ошибок на сайте с использованием файла .htaccess и PHP. Правильное отображение ошибок важно для удобства пользователей.

Что будем искать? Например,программа