Как избавиться от страниц с 404 ошибкой (404 Not Found)
Иногда, переходя с одной страницы на другую, кликая по ссылкам, вы оказываетесь на странице, которая больше никуда не ведет. В этом случае вам выдается сообщение о 404 ошибке, оповещающее о том, что данной страницы не существует. Неправда ли, подобные страницы раздражают? Если вы являетесь владельцем сайта, то вы должны обязательно позаботиться о том, чтобы пользователь который, решил посетить ваш ресурс, не находил подобные страницы. Грамотная организация выдачи статуса 404 ошибки при разработке сайта позволит пользователю, посетившему ваш сайт, все-таки найти нужную информацию.
Что же такое 404 ошибка? Она представляет собой статусный код протокола передачи гипертекста, который необходим для того, чтобы передавать HTML-страницы от веб-сервера браузеру клиента. Прежде чем посетить страницу того или иного сайта, ваш компьютер отправляет серверу запрос на предмет работоспособности страницы, в свою очередь сервер отправляет HTTP заголовок вашему браузеру, который включат информацию о статусе. Если страница работает нормально, сервер отдает статусный код “200 OK”. Вы этот код не видите, поскольку по вашему запросу открывается необходимая страница. В том случае, если сервер не находит страницу, которая вам нужна, он отдает браузеру сообщение “404 Not Found”, и это сообщение вы уже видите.
Каждая цифра в числе 404 что-то значит. Первая четверка означает, что клиент, возможно, просто ошибся при написании url страницы или запрос страницы был не слишком долгим по времени, как это необходимо. Нуль говорит о том, что при написании url была совершена синтаксическая ошибка. Наконец, последней цифрой может быть любая, она как раз и указывает на тип ошибки. К примеру, вы получаете код 401. Это говорит о том, что вы не авторизованы, чтобы просматривать данную страницу; “4” сообщает, что данная страница не размещается ни на одном из серверов.
Есть и еще одно объяснение числа 404. Существует миф о том, что именно в комнате 404 располагался первый веб-сервер. Тут есть небольшой элемент мистики, поскольку в здании, где находился первый веб-сервер, а это здание CERN (European Organization for Nuclear Research) никогда не было 404 комнаты. Вот такая вот легенда, в которую вы можете верить или не верить.
Избавление от статуса 404 ошибки
Для начала вам нужно выявить, какие из страниц отдают серверу эту ошибку. Сделать это можно, просмотрев лог-файлы, где находится вся техническая информация о том когда, какими страницами, какие статусные коды отдавались серверу. Причина 404 ошибки зачастую кроется в том, что страницы неправильно перелинкованы друг с другом. Посмотрев содержимое лог-файлов, вы выясните, на каких страницах у вас ошибки. Если у вас нет доступа к ним, то следует обратиться на хостинг веб-сайта за информацией из лог-файлов.
В результате чего появляется сообщение о 404 ошибках?
Сообщение “404 Not Found” появляется на вашем экране по нескольким причинам:
1. страница просто-напросто была перемещена (url страницы поменялся);
2. могут быть незначительные ошибки в написание url страницы;
3. страница была удалена.
Если вы просто удалили или изменили url ссылки, то страницы, которые ссылались до этого момента на существующую страницу, начинают ссылаться на несуществующую страницу. Конечно, в этом случае стоит в первую очередь задуматься о корректности ссылок на собственном сайте. Внешние (входящие) ссылки вам уже никак не исправить, поэтому старайтесь не очень часто удалять и менять url страниц. Если вам особенно дороги какие-то ссылки, то вы должны связаться с владельцами сайтов, объяснить им причину и попросить исправить HTML код ссылки. Кроме того, вы должны время от времени проверять правильность ваших исходящих и входящих ссылок.
Грамотная организация страницы с 404 ошибкой
Сделайте страницу, которая выдает статус 404 ошибки, вашим преимуществом. Существует 5 основных правил, чтобы создать страницу, выдаваемую сервером вместо сообщения “404 Not Found”:
• дизайн страницы должен соответствовать общей концепции дизайна сайта;
• на странице должны присутствовать извинения о том, что страница не работает;
• разместите на странице те ссылки, которые могут быть полезны пользователю, попавшему на данную страницу;
• если возможности вашего сервера позволяют, то можно настроить механизм автоматической проверки правильности написания url. Если url написан некорректно, то он исправляет url и отправляет пользователя на соответствующую страницу, предварительно уведомив об изменениях;
• наконец, на вашем сайте обязательно должна быть строка поиска.
Что же делают пользователи, когда заходят на несуществующую страницу?
По статистике большинство пользователь приходят в ярость, когда им выдается сообщение о том, что страница не найдена. Почти столько же людей не обращают на это внимание, возвращаясь на страницу, на которой они были до этого.
Гораздо меньше тех, кто идет на главную страницу сайта; еще меньше тех, кто пишет об ошибке веб-мастеру, ответственному за разработку сайта.
Приемы борьбы со статусом 404 ошибки
Если вы знаете, что страницу, которую вы будете перемещать на другой url, будут искать пользователи, то не поленитесь сделать редирект на новую страницу. Желательно редирект делать с оповещением о том, что пользователь будет перемещен на новую страницу по истечении нескольких секунд. Простейший способом организовать редирект со страницы со статусом 404 ошибки, это написать следующий фрагмент HTML-кода:
< meta http-equiv="Refresh" content="5;URL=not404.htm">
Страница будет перезагружена, однако, после перезагрузки браузеру будет отдана страница с совершенно с другим url.
Это нужно делать в том случае, если у вас просто сменился url страницы. Если вы хотите, чтобы вместо несуществующих страниц браузеру отдавалась страница с извещением о том, что такой страницы нет на сервере, то можно проделать следующие действия:
• предварительно создаете страницу;
• создаете папку в корне, типа error (название здесь неважно, главное не забудьте прописать аналогичное название папки в .htaccess);
• размещаем в этой папке созданную страницу, назвав ее, к примеру, 404.htm;
• прописываем команду ErrorDocument 404 /error/404.htm в .htaccess.
Эти шаги позволят не допустить появления сообщений Not Found на вашем сайте.
Меган Уитмор
Перевод под редакцией Сергея Стружкова, руководителя отдела ресурсов компании
Есть о чем рассказать? Тогда присылайте свои материалы Марине Ибушевой
-
Ситуация такая. Сайт вообще не грузится.
---------------------------------------------------------------------
Not Found
The requested URL was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
-------------------------------------------------------------------
Хотя по FTP соединение есть, файловая структура сайта просматривается. Пробовал открывать ...Ситуация такая. Сайт вообще не грузится.
---------------------------------------------------------------------
Not Found
The requested URL was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
-------------------------------------------------------------------
Хотя по FTP соединение есть, файловая структура сайта просматривается. Пробовал открывать сайт в разных браузерах - увы :(
Подскажите что мне можно сделать чтобы восстановить работу -
Из файла Windows/system32/drivers/etc/Hosts(открываем блокнотом) удаляем все и вставляем следующее:
# (C) Корпорация Майкрософт (Microsoft Corp.), 1993-2010
#
# Это образец файла HOSTS, используемый Microsoft TCP/IP для Windows.
#
# Этот файл содержит сопоставления IP-адресов именам узлов.
# Каждый элемент должен располагаться в отдельной строке. IP-адрес должен
# находиться в первом столбце, за ним должно следова...Из файла Windows/system32/drivers/etc/Hosts(открываем блокнотом) удаляем все и вставляем следующее:
# (C) Корпорация Майкрософт (Microsoft Corp.), 1993-2010
#
# Это образец файла HOSTS, используемый Microsoft TCP/IP для Windows.
#
# Этот файл содержит сопоставления IP-адресов именам узлов.
# Каждый элемент должен располагаться в отдельной строке. IP-адрес должен
# находиться в первом столбце, за ним должно следовать соответствующее имя.
# IP-адрес и имя узла должны разделяться хотя бы одним пробелом.
#
# Кроме того, в некоторых строках могут быть вставлены комментарии
# (такие, как эта строка), они должны следовать за именем узла и отделяться
# от него символом '#'.
127.0.0.1 localhost
Поможет 100% мне помогло и многим! -
Помогите, если вы специалист по ошибкам! У меня есть сайт, хостинг платный, работал год нормально. Модем мегафоновский. И вот уже два дня, когда я вхожу в админку и пытаюсь изменить страницу или статью, то автоматически попадаю на страницу мегафона где написано, что такой страницы не существует, перейдите по адресу... мегафона/ Переходила, смотрела, там предлагается одна их реклама. Как бороться с такой ошибкой, это ведь мегафоновские проделки
-
У меня тоже была ошибка 404 Not Fond, но я узнал как от нее избавиться. Если у вас браузер Firefox то заходите "инструменты"-"дополнения"-там отключите все плагины и расширения, потом перезагрузите браузер ошибка должна исчезнуть, после чего включаете плагины по одному с перезагрузкой браузера, так вы узнаете из-за какого плагина возникает ошибка, потом удалите его и попрощайтесь с 404 Not Fond.