Шаг 21 - Сообщения об ошибках

Я уверен, что набирая какой-нибудь адрес страницы в интернете Вы сталкивались с сообщениями об ошибках. Ошибки бывают разные, но самой частой ошибкой является отсутствие запрашиваемого ресурса. Это может быть связано с его перемещением или просто неверным адресом.

Наполняя свою страничку полезной информацией Вы не застрахованы то того, что какой-нибудь посетитель оставит где-то ссылку на конкретный файл вашего сайта. Сколько эта ссылка будет там храниться одному Богу известно. Но рано или поздно кто-то по ней обязательно кликнет, а так как своя рука "владыка" Вы можете переместить этот файл куда угодно. Человек, который жаждил увидеть Вашу страничку получит лишь предупреждение об ошибке, которое встроено в веб-сервер. Естественно о наличии Вашего сайта и его конкретного адреса он никогда не сможет догадаться, поэтому просто закроет браузер или пойдет в другое место. Этого посетителя Вы вероятно не сможете никак вернуть.

Но веб-сервер Apache позволяет поменять стандартное сообщение об ошибке на свое собственное. В нем Вы естественно нормальным языком (на родном желательно :-) объясните посетителю, что типа "Ну нет тут этого файла !!! Сходите туда-то... Нажмите сюда-то... Напишите тому-то... И т.д.". Увидев такое сообщение посетитель сможет перейти на главную страницу сайта или написать письмо автору или веб-мастеру. Теперь он просто так не отвяжется и не уйдет от Вас :-).

Делается это как всегда просто. Вспомните о существовании файла .htaccess в корневом каталоге сайта. Если его нет, то создайте. В него Вы можете написать команды следующего типа:

ErrorDocument <номер ошибки протокола http> <URL страницы с сообщением>
Таким образом Вы можете прописать все стандартные ошибки протокола. Например, для ошибки отсутствия ресурса можно записать так:
ErrorDocument 404 http://www.yoursite.ru/error404.html
В файл error404.html Вам придется записать сообщение об ошибке 404.

Как я уже говорил, ошибок в протоколе http много и подробнее о них Вы можете почитать в соответствующих RFC или в разделе Protocols нашего сайта. Насколько я помню там они есть.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Кузин Андрей - 13.05.2000