Как создать сайт?
Главная Карта сайта Учебник HTML Учебник CSS Учебник CSS 3 Публикация сайта Раскрутка сайта Справочник Уроки  Форум  Новости От автора

Как создать страницу ошибки 404?

..или страница которой нет!

Прежде чем создавать страницу ошибки 404 давайте сначала разберёмся что это вообще за ошибка такая..

Ошибка 404 или Not Found - не найдено.. это стандартный код ответа HTTP о том, что страницы, к которой обращается пользователь, нет на сервере.. попросту она не существует.

Возникать данная ошибка может в ряде случаев:

Что увидит пользователь в результате этой ошибки?

В лучшем случае страницу с рекламой Вашего хостера и кратким объяснением что мол Вы "не туда попали".. в худшем это будет просто надпись: 404 Not Found - The requested URL /page.html was not found on this server - собственно "Запрашиваемый URL отсутствует на этом сервере".

Теперь представьте, что сделает пользователь когда увидит эту картину? Правильно!! закроет эту страницу и пойдёт искать интересующую его информацию в другом месте!! - в результате чего Вы потеряете целевого посетителя!

В этом уроке мы займёмся тем что создадим свою собственную пользовательскую страницу ошибки 404 - Которая в отличии от стандартных страниц ошибки будет иметь ряд несомненных преимуществ:

Как видите сплошные плюсы..

Создаётся страница ошибки 404 точно так же как и любая другая страница на Вашем сайте.. никаких нюансов в коде странице нет..

Ну например создадим файл с именем 404.html

<html>
<head>
<title>Ошибка 404</title>
</head>
<body>
<img src="graphics/404.gif" alt="Ошибка 404">
<p>К сожалению, запрашиваемая Вами страница не найдена..</p>
<p>Почему?</p>
<ol>
<li>Ссылка, по которой Вы пришли, неверна.
<li>Вы неправильно указали путь или название страницы.
<li>Страница была удалёна со времени Вашего последнего посещения.
</ol>
<p>Для продолжения работы с сайтом Вы можете воспользоваться формой поиска по сайту:</p>
<form>
<input type="text" size="30">
<input type="submit" value="Поиск">
</form>
<p>..или перейти на:</p>
<ul>
<li><a href="#">Главную страницу сайта.</a>
<li><a href="#">Карту сайта</a>
</ul>
</body>
</html>
смотреть пример  

На самом деле это просто страничка "скелет" конечно же Вам следует создать свою собственную, полноценную страницу ошибки 404.

Создали? а вот теперь поговорим о нюансах..

Для того что бы в случае возникновения ошибки с кодом 404 посетитель переходил на только что созданную нами страницу, необходимо создать системный файл .htaccess который будет содержать в себе директиву: ErrorDocument 404 - это директива указывает серверу о том куда следует перенаправлять пользователя в случае возникновения ошибки 404.

Что это за файл такой спросите Вы?

Файл .htaccess (я не опечатался, пишется с точкой в начале имени и не использует никакого расширения) – дает возможность конфигурировать работу сервера в отдельных его директориях..

На данный файл может быть возложен ряд специфических задач.. например: устанавливать права доступа к файлам в папке, менять названия индексных файлов, глобально перенаправлять посетителей на другой сайт, запретить доступ к сайту с определённого ip адреса... и еще много всяких иногда очень полезных вещей может делать этот чудо файл.. в том числе может самостоятельно обрабатывать ошибки сервера - что нам собственно и нужно!

Однако углубляться во все подробности и тонкости мы не будем, а поговорим лишь о том, что нас интересует на данный момент.

Итак, создаём файл под названием .htaccess который содержит в себе одну единственную строчку (если таковой файл уже имеется с какими ни будь другими инструкциями серверу, то просто дописываем в него эту строчку):

ErrorDocument 404 http://www.site.ru/404.html

И заливаем его на сервер в корневую папку сайта.

Ну только естественно сначала поменяйте в файле .htaccess ссылку http://www.site.ru/404.html на адрес Вашей собственной страницы которая должна будет открываться при возникновении ошибки 404.

Вот собственно и всё! теперь если Вы всё сделали правильно, при возникновении ошибки 404 будет загружаться Ваша "ошибочная" страница.

Сейчас огорчу тех кто располагает свой сайт на том или ином бесплатном хостинге.. Большинство бесплатных хостеров не дают доступа к файлу .htaccess так что создать страницу 404 на бесплатном хостинге вряд ли удастся.


P.S.Таким же способом с помощью файла .htaccess Вы можете обрабатывать и другие ошибки сервера:

Если что-то непонятно или Вы в чем-то сомневаетесь, то за дополнительными разъяснениями обращайтесь на форум.