Global handle 404 error

Материал из wiki.lissyara.su
Перейти к: навигация, поиск

Глобальная обработка 404/500/... ошибок веб-сервером apache

Идея сама простая, но допёр не сразу, поэтому оставляю заметку по этому поводу.

Задача - выдавать красивую страницу 404 на соответствующую ошибку "ненайдено". В конфиг апача добавляем такие строки:

# modifyed by lissyara 2010-07-15 in 20:17MSK
# MD5 ("host-food.ru") = 963ae7870bf7a8d3d2242b10e6aee32b
ErrorDocument   404     /963ae7870bf7a8d3d2242b10e6aee32b/404.html
ErrorDocument   500     /963ae7870bf7a8d3d2242b10e6aee32b/500.html
Alias           /963ae7870bf7a8d3d2242b10e6aee32b/      /usr/local/ispmgr/www/disabled/

Смысл в следующем - указываем УРЛ для 404/500 ошибок, и, добавляем альяс, чтобы отловить их с сайта пользователя и направить на нужную нам директорию.

963ae7870bf7a8d3d2242b10e6aee32b

это любая строка - я использовал md5 сумму от фразы "host-food.ru" =)

Разумеется, чтобы показывало всё красиво, внутри указанной директории (/usr/local/ispmgr/www/disabled/) должны лежать файлы с именами 404.html и 500.html.

У пользователя остаётся возможность заюзать .htacccess и нарисовать свою страницу для ошибки. В расплату - невозможность на всех сайтах использовать субдиректорию с именем

963ae7870bf7a8d3d2242b10e6aee32b

Если честно - не думаю что она кому-то нужна =)