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

Диапазон кодов           Значение ответа
  100-199                                    Информационный
  200-299                                    Запрос броузера успешен
  300-399                                    Запрос броузера переадресован, необходимы дальнейшие действия
  400-499                                    Запрос броузера является неполным
  500-599                                    Ошибки сервера

Ответы в диапазоне кодов 100-199 являются информационными. Они указывают, что запрос броузера принят и обрабатывается.

  • 100 Continue — начальная часть запроса принята, и броузер может продолжать передачу запроса.
  • 101 Switching Protocols — сервер выполняет требование броузера и переключает протоколы в соответствии с указанием, данным в поле заголовка Upgrade.

Ответы в диапазоне 200-299 означают, что запрос броузера обработан успешно.

  • 200 ОК — запрос броузера обработан успешно и ответ сервера содержит затребованные данные.
  • 201 Created — этот код состояния используется в случае создания нового URL.
  • Вместе с этим кодом результата сервер выдает заголовок, который содержит информацию о том, куда были помещены новые данные.
  • 202 Accepted — запрос принят, но обрабатывается не сразу. В теле содержимого ответа сервера может быть дана дополнительная информация о данном сеансе. Гарантии того, что сервер в конечном итоге удовлетворит запрос, нет — даже несмотря на то, что на момент приема запрос выглядел допустимым.
  • 203 Non-Authoritative Information — информация в заголовке содержимого взята из локальной копии или у третьей стороны, а не с исходного сервера.
  • 204 No Content — ответ содержит код состояния и заголовок, но тело содержимого отсутствует. При получении этого ответа броузер не должен обновлять свой документ. Обработчик чувствительных областей изображений может возвращать этот код, когда пользователь щелкает на бесполезных или пустых участках изображения.
  • 205 Reset Content — броузер должен очистить используемую в данной транзакции форму для помещения дополнительных входных данных. Полезен для CGI-приложений, требующих ввода данных.
  • 206 Partial Content — сервер возвращает лишь часть данных из общего затребованного объема.

Код ответа в диапазоне 300-399 означает, что запрос не выполнен и клиенту нужно предпринять некоторые дополнительные действия для удовлетворения запроса.

  • 300 Multiple Choices — затребованный URL указывает на несколько ресурсов. Например, URL может обозначать документ, переведенный на несколько языков. В теле содержимого, возвращенном сервером, может находиться перечень более конкретных данных о том, как выбрать этот ресурс правильно.
  • 301 Moved Permanently — затребованный URL уже не используется сервером и указанная в запросе операция не выполнена.
  • 302 Moved Temporarily — в данный момент затребованный URL перемешен, но лишь временно.
  • 303 See Other — затребованный URL можно найти по другому URL. Его следует выбрать методом GET по данному ресурсу.
  • 304 Not Modified — тело содержимого не посылается и броузер должен использовать свою локальную копию.
  • 305 Use Proxy — доступ к затребованному URL должен осуществляться через прокси-сервер.

Коды ответов в диапазоне 400-499 означают, что запрос броузера неполный. Эти коды могут также означать, что от броузера требуется дополнительная информация.

  • 400 Bad Request — сервер обнаружил в запросе броузера синтаксическую ошибку.
  • 401 Unauthorized — этот код результата показывает, что пославший запрос пользователь не имеет необходимых полномочий, и что при повторении запроса с указанием данного URL пользователь должен такие полномочия предоставить.
  • 402 Payment Required — этот код в HTTP еще не реализован.
  • 403 Forbidden — запрос отклонен по той причине, что сервер не хочет (или не имеет возможности) ответить броузеру.
  • 404 Not Found — документ по указанному URL не существует.
  • 405 Method Not Allowed — метод, используемый броузером, для данного URL не поддерживается.
  • 406 Not Acceptable — ресурс, указанный клиентом по данному URL, существует, но не в том формате, который нужен броузеру.
  • 407 Proxy Authentication Required — прокси-сервер должен санкционировать запрос перед тем, как пересылать его.
  • 408 Request Time-out — броузер не передал полный запрос в течение установленного промежутка времени (который обычно задается в конфигурации сервера) и сервер разрывает сетевое соединение.
  • 409 Conflict — данный запрос конфликтует с другим запросом или с конфигурацией сервера.
  • 410 Gone — затребованный URL больше не существует и навсегда удален с сервера.
  • 411 Length Required — сервер не примет запрос без указанного в нем заголовка Content-Length.
  • 412 Precondition Failed — результат вычисления условия, заданного в запросе одним или несколькими заголовками if…, представляет собой значение «ложь».
  • 413 Request Entity Too Large — сервер не будет обрабатывать запрос, потому что его тело слишком велико.
  • 414 Request-URL Too Long — сервер не будет обрабатывать запрос, потому что его URL слишком длинный.
  • 415 Unsupported Media Type — сервер не будет обрабатывать запрос, потому что его тело имеет неподдерживаемый формат.

Коды ответов в диапазоне 500-599 показывают, что сервер столкнулся с ошибкой и, вероятно, не сможет выполнить запрос броузера.

  • 500 Internal Server Error — при обработке запроса на сервере один из его компонентов (например, CGI-программа) выдал аварийный отказ или столкнулся с ошибкой конфигурации.
  • 501 Not Implemented — броузер запросил выполнение действия, которое сервер выполнить не может.
  • 502 Bad Gateway — сервер (или прокси-сервер) получил недопустимые ответы другого сервера (или прокси-сервера).
  • 503 Service Unavailable  этот код означает, что данная служба временно недоступна, но в будущем доступ к ней будет восстановлен.
  • 504 Gateway Time-out — этот ответ похож на код 408 (Request Time-out), за исключением того, что лимит времени превысил шлюз или прокси-сервер.
  • 505 HTTP Version not supported — сервер не поддерживает версию протокола HTTP, использованную в запросе.

Наиболее частой серверной ошибкой является отсутствие запрашиваемого ресурса (404 Not Found). Это может быть связано как с перемещением указанного ресурса, так и с указанием неверного URL-адреса.
Наполняя свою Web-страницу полезной информацией, вы не застрахованы от того, что какой-нибудь посетитель оставит где-то ссылку на конкретный файл вашего сайта. Сколько эта ссылка будет там храниться — никому не известно, но рано или поздно кто-то по ней обязательно придет, а вы к тому времени можете переместить требуемый файл куда угодно. Юзер, который хотел посетить вашу Веб страницу, получит лишь предупреждение об ошибке. Пользователь просто закроет страницу или перейдет на другой сайт. Так или иначе , этого посетителя вы, скорее всего, уже не сможете вернуть.

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

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

ErrorDocument 404
http://www.yousite.ru/error404.htm

Теперь в файл error404.htm поместите сообщение об ошибке 404, указав адрес главной страницы своего сайта и некоторый поясняющий текст.

Метки: