Коды ошибки http веб-сервера. Расшифровка кодов

  • 03.11.2019

Шпаргалка по ответам сервера. Заглянув в данный список можно безошибочно определить, что означает то или иное число, отдаваемое серваком. Скопировал из Википедии. Для наиболее частых ответов (301, 404, 500), сделал более подробное описание.

Всю эту информацию можно посмотреть в графическом исполнении вот . Изучая рисунок можно более наглядно представить процессы общения по схеме клиент — сервер.

1xx: Информационные.

  • 100 Continue (Продолжать).
  • 101 Switching Protocols (Переключение протоколов).
  • 102 Processing (Идёт обработка).

2xx: Success (Успешно).

  • 200 OK (Хорошо).
  • 201 Created (Создано).
  • 202 Accepted (Принято).
  • 203 Non-Authoritative Information (Информация не авторитетна).
  • 204 No Content (Нет содержимого).
  • 205 Reset Content (Сбросить содержимое).
  • 206 Partial Content (Частичное содержимое).
  • 207 Multi-Status (Многостатусный).
  • 226 IM Used (IM использовано).

3xx: Redirection Перенаправление.

  • 300 Multiple Choices (Множество выборов).
  • 301 Moved Permanently (Перемещено окончательно, ).
  • 302 Found (Найдено).
  • 303 See Other (Смотреть другое).
  • 304 Not Modified (Не изменялось).
  • 305 Use Proxy (Использовать прокси).
  • 306 (зарезервировано).
  • 307 Temporary Redirect (Временное перенаправление, часто используется при работе над сайтом, когда посетителя отправляют на другой url. Например, страницу описывающую, что на сайте ведутся работы).

4xx: Client Error (Ошибка клиента).

  • 400 Bad Request (Плохой запрос).
  • 401 Unauthorized (Неавторизован).
  • 402 Payment Required (Необходима оплата).
  • 403 Forbidden (Запрещено. Данный код можно увидеть, если у вас не хватает прав для просмотра той или иной страницы).
  • 404 Not Found (Не найдено. Одна из самых распространенных ошибок — 404. Страница не найдена по указанному адресу, «битая ссылка»).
  • 405 Method Not Allowed (Метод не поддерживается).
  • 406 Not Acceptable (Не приемлемо).
  • 407 Proxy Authentication Required (Необходима аутентификация прокси).
  • 408 Request Timeout (Время ожидания истекло).
  • 409 Conflict (Конфликт).
  • 410 Gone (Удалён).
  • 411 Length Required (Необходима длина).
  • 412 Precondition Failed (Условие «ложно»).
  • 413 Request Entity Too Large (Размер запроса слишком велик).
  • 414 Request-URI Too Long (Запрашиваемый URI слишком длинный).
  • 415 Unsupported Media Type (Неподдерживаемый тип данных).
  • 416 Requested Range Not Satisfiable (Запрашиваемый диапазон не достижим).
  • 417 Expectation Failed (Ожидаемое не приемлемо).
  • 418 I’m a teapot (Я — чайник).
  • 422 Unprocessable Entity (Необрабатываемый экземпляр).
  • 423 Locked (Заблокировано).
  • 424 Failed Dependency (Невыполненная зависимость).
  • 425 Unordered Collection (Неупорядоченный набор).
  • 426 Upgrade Required (Необходимо обновление).
  • 449 Retry With (Повторить с…).
  • 456 Unrecoverable Error (Некорректируемая ошибка…).

5xx: Server Error (Ошибка сервера).

  • 500 Internal Server Error (Внутренняя ошибка сервера. Вылезает при некорректной настройке сервера или использования скриптов, не поддерживаемых сервером).
  • 501 Not Implemented (Не реализовано).
  • 502 Bad Gateway (Плохой шлюз).
  • 503 Service Unavailable (Сервис недоступен).
  • 504 Gateway Timeout (Шлюз не отвечает).
  • 505 HTTP Version Not Supported (Версия HTTP не поддерживается).
  • 506 Variant Also Negotiates (Вариант тоже согласован).
  • 507 Insufficient Storage (Переполнение хранилища).
  • 509 Bandwidth Limit Exceeded (Исчерпана пропускная ширина канала).
  • 510 Not Extended (Не расширено).

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

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

Запрос клиента успешен (Successful 2xx)

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

200 ="OK"
Запрос клиента обработан успешно, и ответ сервера содержит затребованные данные.
201 ="Created"
Этот код состояния используется в случае создания нового URI. Вместе с этим кодом результата сервер выдает заголовок Location (см. главу 19), который содержит информацию о том, куда были помещены новые данные.
202 ="Accepted"
Запрос принят, но обрабатывается не сразу. В теле содержимого ответа сервера может быть дана дополнительная информация о данной транзакции. Гарантии того, что сервер в конечном итоге удовлетворит запрос, нет, даже несмотря на то, что на момент приема запрос выглядел допустимым.
203 ="Non-Authoritative Information"
Информация в заголовке содержимого взята из локальной копии или у третьей стороны, а не с исходного сервера.
204 ="No Content"
Ответ содержит код состояния и заголовок, но тело содержимого отсутствует. При получении этого ответа броузер не должен обновлять свой документ. Обработчик чувствительных областей изображений может возвращать этот код, когда пользователь щелкает на бесполезных или пустых участках изображения.
205 ="Reset Content"

Броузер должен очистить форму, используемую в данной транзакции, для дополнительных входных данных. Полезен для CGI-приложений, требующих ввода данных.

206 ="Partial Content"

Сервер возвращает лишь часть данных затребованного объема. Используется в ответе на запрос с указанием заголовка Range. Сервер должен указать диапазон, включенный в ответ, в заголовке Content-Range.

233 - because not everyone lives in "your country"

Запрос клиента переадресован (Redirection 3xx)

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

300 ="Multiple Choices"
Затребованный URI обозначает более одного ресурса. Например, URI может обозначать документ, переведенный на несколько языков. В теле содержимого, возвращенном сервером, может находиться перечень более конкретных данных о том, как выбрать ресурс правильно.
301 ="Moved Permanently" - перемещен навсегда
Затребованный URI уже не используется сервером, и указанная в запросе операция не выполнена. Новое местонахождение затребованного документа указывается в заголовке Location. Во всех последующих запросах данного документа следует указывать новый URI.
При запросах не методом HEAD сервер должен передать в теле сообщения гипертекстовое пояснение. При использовании всех методов, кроме GET и POST, предварительно следует уведомить пользователя об изменении ссылки. Не стоить забывать, что некоторые агенты ошибочно меняют метод POST на GET после перехода на другой адрес.
302 ="Moved Temporarily" - временно перемещен
Затребованный URI перемешен, но лишь временно. Заголовок Location указывает на новое местонахождение. Сразу же после получения этого кода состояния клиент должен разрешить запрос при помощи нового URI, но во всех последующих запросах необходимо пользоваться старым URI.
При всех методах кроме HEAD сервер должен передать в теле гипертекстовое пояснение. При использовании всех отличных от GET и POST методов предварительно следует уведомить пользователя об изменении URI. При обращении к следующему ресурсу метод POST на GET менять следует как это делают некоторые агенты.
303 ="See Other"
Затребованный URI можно найти по другому URI (указанному в заголовке Location). Его следует выбрать методом GET по данному ресурсу.
304 ="Not Modified"

Это код ответа на заголовок lf-Modified-Since, если URI не изменялся с указанной даты. Тело содержимого не посылается, и клиент должен использовать свою локальную копию.

305 ="Use Proxy"

Доступ к затребованному URI должен осуществляться через proxy-сервер, указанный в заголовке Location.

306 ="(Unused)" 307 ="Temporary Redirect"

Запрос клиента является неполным (Client Error 4xx)

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

400 ="Bad Request"
Означает, что сервер обнаружил в запросе клиента синтаксическую ошибку.
401 ="Unauthorized" - требуется авторизация
Этот код результата, передаваемый с заголовком WWW-Authenticate, показывает, что пославший запрос пользователь не имеет необходимых полномочий и что при повторении запроса с указанием данного URI пользователь должен такие полномочия предоставить.
402 ="Payment Required"
Этот код в HTTP еще не реализован.
403 ="Forbidden"
Запрос отклонен по той причине, что сервер не хочет (или не имеет возможности) ответить клиенту.
404 ="Not Found" - не найдено
Документ по указанному URI не существует.
405 ="Method Not Allowed" - метод не поддерживается
Этот код выдается с заголовком Allow и показывает, что метод, используемый клиентом, для данного URI не поддерживается.
406 ="Not Acceptable"
Ресурс, указанный клиентом по данному URI, существует, но не в том формате, который нужен клиенту. Вместе с этим кодом сервер выдает заголовки Content-Language, Content-Encoding и Content-Type.
407 ="Proxy Authentication Required" Прокси-сервер затребовал авторизацию.
Proxy-сервер должен санкционировать запрос перед тем, как пересылать его. Используется с заголовком Proxy-Authenticate.
408 ="Request Time-out"
Этот код ответа означает, что клиент не передал полный запрос в течение некоторого установленного промежутка времени (который обычно задается в конфигурации сервера) и сервер разрывает сетевое соединение.
409 ="Conflict"
Данный запрос конфликтует с другим запросом или с конфигурацией сервера. Информацию о конфликте следует возвратить в информационной части ответа.
410 ="Gone"
Данный код показывает, что затребованный URI больше не существует и навсегда удален с сервера.
411 ="Length Required"
Сервер не примет запрос без указанного в нем заголовка Content-Length.
412 ="Precondition Failed"
Результат вычисления условия, заданного в запросе одним или несколькими заголовками if. . ., представляет собой "ложь".
413 ="Request Entity Too Large"
Сервер не будет обрабатывать запрос, потому что его тело слишком велико.
414 ="Request-URI Too Long" - запрос слишком длинный
Сервер не будет обрабатывать запрос, потому что его URI слишком длинный.
415 ="Unsupported Media Type"

Сервер не будет обрабатывать запрос, потому что его тело имеет неподдерживаемый формат.

416 ="Requested Range Not Satisfiable"

Запрашиваемый диапазон не допустим

417 ="Expectation Failed"

Ожидание не удалось

422 ="Unprocessable Entity" - сервер успешно принял запрос, может работать с указанным видом данных (например, в теле запроса находится XML-документ, имеющий верный синтаксис), однако имеется какая-то логическая ошибка, из-за которой невозможно произвести операцию над ресурсом.
В некоторых системах используется для передачи требования дополнительных данных: NOT ENOUGH DATA (не хвататет данных) 429 ="You exceeded the rate limit"

Превышен лимит запросов

449 - Retry with a proxy in another country. 450 =Rating Service Unavailable 451 =Unavailable For Legal Reasons

доступ к ресурсу ограничен из-за проблем с законом. 451 - Site is not permitted in your country

452 could be site not permitted by employer, 453 could be site not permitted by ISP 460 Blocked by Repressive Regime

Ошибки сервера (Server Error 5xx)

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

500 ="Internal Server Error"
При обработке запроса на сервере один из его компонентов выдал аварийный отказ или столкнулся с ошибкой конфигурации. Часто бывает связанно с ошибками в файле.htaccess
501 ="Not Implemented"
Клиент запросил выполнение действия, которое сервер выполнить не может.
502 ="Bad Gateway"
Сервер (или proxy-сервер) получил недопустимые ответы другого сервера (или proxy-сервера).
503 ="Service Unavailable"
Данный код означает, что данная служба временно недоступна, но в будущем доступ к ней будет восстановлен. Если сервер знает, когда это произойдет, может быть также выдан заголовок Retry-After.
504 ="Gateway Time-out"
Этот ответ похож на 408 (Request Time-out), за исключением того, что шлюз или уполномоченный сервер превысил лимит времени.
505 ="HTTP Version not supported"

Сервер не поддерживает версию протокола HTTP, использованную в запросе.

560 - Server is being censored

Ошибки (Error 7xx)

701 - Your ISP is being a twat. 702 - Your organization is being a twat. 703 - Your government is being a twat 704 - Your ISP is being a twat, and has messed with your DNS request, sending you to a spamvertizement for the domain requested. 705 - Your ISP is throttling / packet shaping the living hell out of your connection. 706 - Variant HTML requested (mobile, Flash-free....lots of flags in here). 707 - The current server time (in ticks since the epoch) & the server"s time zone.

Ошибки (Error 9xx)

911 - Internet Emergency. The provider of this connection is being forced to censor this request

Для отправки кода статуса из PHP используется директива "header Status ".


.

Коды ошибок посылаются WEB-сервером агенту пользователя для определения его дальнейшего поведения.

Ошибки ВЕБ-сервера делятся на диапазоны:

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

В диапазоне определены лишь несколько кодов, хотя для сервера при необходимости могут определяться собственные коды. При получении кода, который не может распознать, агент интерпретирует его в соответствии с диапазоном, к которому этот код принадлежит. Коды в диапазонах 100-199, 200-299 и 300-399 большинство Web-броузеров обрабатывают без извещения пользователя, а некоторые коды ошибок из диапазонов 400-499, 500-599 отображаются для пользователя.

Код ошибки http сервера Краткое описание
ошибка 100 Continue Начальная часть запроса принята, и клиент может продолжать передачу запроса
ошибка 101 Switching Protocols Сервер выполняет требование клиента и переключает протоколы в соответствии с указанием, данным в поле заголовка Upgrade.
ошибка 200 OK Запрос клиента обработан успешно и ответ сервера содержит затребованные данные
ошибка 201 Created Этот код состояния используется в случае создания нового URI. Вместе с этим кодом результата сервер выдает заголовок Location, который содержит информацию о том, куда были помещены новые данные.
ошибка 202 Accepted Запрос принят, но обрабатывается не сразу. В теле содержимого ответа сервера может быть дана дополнительная информация о данной транзакции. Гарантии того, что сервер в конечном итоге удовлетворит запрос, нет, даже несмотря на то, что на момент приема запрос выглядел допустимым.
ошибка 203 Non-Authoritative Information Информация в заголовке содержимого взята из локальной копии или у третьей стороны, а не с исходного сервера.
ошибка 204 No Content Ответ содержит код состояния и заголовок, но тело содержимого отсутствует. При получении этого ответа броузер не должен обновлять свой документ. Обработчик чувствительных областей изображений может возвращать этот код, когда пользователь щелкает на бесполезных или пустых участках изображения.
ошибка 205 Reset Content Броузер должен очистить форму, используемую в данной транзакции, для дополнительных входных данных. Полезен для CGI-приложений, требующих ввода данных.
ошибка 206 Partial Content Сервер возвращает лишь часть данных затребованного объема. Используется в ответе на запрос с указанием заголовка Range. Сервер должен указать диапазон, включенный в ответ, в заголовке Content-Range.
ошибка 300 Multiple Choices Затребованный URI обозначает более одного ресурса. Например, URI может обозначать документ, переведенный на несколько языков. В теле содержимого, возвращенном сервером, может находиться перечень более конкретных данных о том, как выбрать ресурс правильно
ошибка 301 Moved Permanently Затребованный URI уже не используется сервером, и указанная в запросе операция не выполнена. Новое местонахождение затребованного документа указывается в заголовке Location. Во всех последующих запросах данного документа следует указывать новый URI.
ошибка 302 Moved Temporarily Затребованный URI перемешен, но лишь временно. Заголовок Location указывает на новое местонахождение. Сразу же после получения этого кода состояния клиент должен разрешить запрос при помощи нового URI, но во всех последующих запросах необходимо пользоваться старым URI.
ошибка 303 See Other Затребованный URI можно найти по другому URI, указанному в заголовке Location. Его следует выбрать методом GET по данному ресурсу.
ошибка 304 Not Modified Это код ответа на заголовок lf-Modified-Since, если URI не изменялся с указанной даты. Тело содержимого не посылается, и клиент должен использовать свою локальную копию.
ошибка 305 Use Proxy Доступ к затребованному URI должен осуществляться через proxy-сервер, указанный в заголовке Location.
ошибка 400 Bad Request Означает, что сервер обнаружил в запросе клиента синтаксическую ошибку.
ошибка 401 Unauthorized Этот код результата, передаваемый с заголовком WWW-Authenticate, показывает, что пославший запрос пользователь не имеет необходимых полномочий и что при повторении запроса с указанием данного URI пользователь должен такие полномочия предоставить.
ошибка 402 Payment Required Этот код в HTTP еще не реализован.
ошибка 403 Forbidden Запрос отклонен по той причине, что сервер не хочет (или не имеет возможности) ответить клиенту. Возможные причины ошибки:
  • Вы пытаетесь запустить CGI-скрипт, расположенный вне CGI-директории (например, в директории документов сервера www). Можно запускать скрипты из www-директории только если в ней есть файл.htaccess (с точкой в начале) следующего содержания: Options +ExecCGI
  • Возможно, вы пытаетесь открыть картинку или статический HTML-файл, расположенный в CGI-директории. Этого делать нельзя. Все рисунки (а также другие файлы, за исключениям скриптов) должны находиться в www-директории.
  • Если вы ожидаете получить листинг каталога, но выводится эта ошибка, вероятно, для данной директории выдача листинга запрещена (например, это CGI-папка). Для разрешения листинга в нужной директории должен находиться файл.htaccess следующего содержания: Options +Indexes
ошибка 404 Not Found Документ по указанному URL не существует. Возможно, такой файл удален, а возможно, вы ошиблись при наборе URL в браузере или пошли по неверной ссылке.
ошибка 405 Method Not Allowed Этот код выдается с заголовком Allow и показывает, что метод, используемый клиентом, для данного URL не поддерживается. Возможно, вы пытаетесь отправить данные POST-форму на страницу, которая не является скриптом (например, на SHTML-страницу). Проверьте путь в атрибуте action тэга, инициировавшего данный запрос. Проверьте также, не пуст ли этот атрибут (и задан ли).
ошибка 406 Not Acceptable Ресурс, указанный клиентом по данному URL, существует, но не в том формате, который нужен клиенту. Вместе с этим кодом сервер выдает заголовки Content-Language, Content-Encoding и Content-Type.
ошибка 407 Proxy Authentication Required Proxy-сервер должен санкционировать запрос перед тем, как пересылать его. Используется с заголовком Proxy-Authenticate.
ошибка 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 Сервер не будет обрабатывать запрос, потому что его тело имеет неподдерживаемый формат
ошибка 416 Requested Range Not Satisfiable Сервер сообщает - форма запроса (требуемый диапазон) не выполнима
ошибка 417 Expectation Failed Сервер сообщает - время ожидания истекло.
ошибка 500 Internal Server Error При обработке запроса на сервере один из его компонентов (например, CGI-программа) выдал аварийный отказ или столкнулся с ошибкой конфигурации. Причиной этого могут быть неправильные инструкции в файле.htaccess, неправильные атрибуты на CGI-скрипте (должны быть 755). Так же, это может быть ошибка в скрипте. Точную причину можно установить, просматривая error.log.
ошибка 501 Not Implemented Клиент запросил выполнение действия, которое сервер выполнить не может.
ошибка 502 Bad Gateway Сервер (или proxy-сервер) получил недопустимые ответы другого сервера (или proxy-сервера)
ошибка 503 Service Unavailable Данный код означает, что данная служба временно недоступна, но в будущем доступ к ней будет восстановлен. Если сервер знает, когда это произойдет, может быть также выдан заголовок Retry-After.
ошибка 504 Gateway Time-out Этот ответ похож на 408 (Request Time-out), за исключением того, что шлюз или уполномоченный сервер превысил лимит времени.
ошибка 505 HTTP Version not supported Версия HTTP не поддерживается данным сервером

У ПО Консультант плюс есть возможность автоматического пополнения банков через интернет . Думаю многие об этом знают, и о том что это полезная функция не поспоришь. Однако, она не всегда хорошо работает. Но на самом деле нужно просто все правильно настроить.

И так, как настроить:

1) Создаем учетную запись (локальную или доменную) которая имеет доступ в интернет на прокси сервере или шлюзе, так же она должна обладать правами администратора (для упрощения настройки), но можно и ограничить доступом только в папку CONS.

2) Создаем задание в планировщике задач, где указываем время запуска, периодичность, параметры запускаемых объектов и учетную запись (ту что создали в 1 пункте) от имени которой будет запускаться задача.

Параметры командной строки

ПутьДоПапкиКонсультанта\CONS.EXE / adm / base* /receive_inet /yes

По идее все. Теперь наш консультант может сам обновлятся в указанное Вами время. Но я допустил ошибку в настройке, т.к. о подобном тех поддержка не говорила. Во общем мой консультант не обновляется , но планировщик отрабатывает корректно. Прихожу к выводу что само ПО выдает ошибку. Запускаем ПО от имени созданного пользователя, чтобы посмотреть ошибку в интерактивном режиме, и вот что видим:

Понимаем, что нам нужно настроить прокси сервер (т.к. мы используем именно прокси, а не шлюз для доступа в интернет) под этой учетной записью.

Для этого снова запускаем ПО с ключами (можно просто создать ярлык с ключами и запустить от имени нужного пользователя):

Ключи для пополнения банков интерактивно

ПутьДоПапкиКонсультанта\CONS.EXE / adm / inet

Идем в сервис — настройки и вводим нужные параметры:

После этого пробуем пополнить банки, и что видим:

Все получилось, после того как Консультант + настроили под конкретным пользователем на прокси сервер можно смело запускать обновление через планировщик задач, все будет работать!!!

400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported

Более подробно:

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

Коды состояний обычно генерируются Web-серверами, но иногда это могут делать и CGI-сценарии, CGI-сценарии генерируют собственные заголовки вместо тех, которые должен выдавать сервер. Коды состояний группируются следующим образом:

Диапазон кодов значение ответа

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

В HTTP в каждом диапазоне определены лишь несколько кодов, хотя для сервера при необходимости могут определяться собственные коды. Клиент при получении кода, который он не может распознать, интерпретирует его в соответствии с диапазоном, к которому этот код принадлежит. Коды в диапазонах 100-199, 200-299 и 300-399 большинство Web-броузеров обрабатывают без извещения пользователя, а некоторые коды ошибок из диапазонов 400-499 и 500-599 отображаются для пользователя (например, 404 Not Found).

Информационные ответы

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

100 Continue
Начальная часть запроса принята, и клиент может продолжать передачу запроса.

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

Успешные запросы клиента

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

200 OK
Запрос клиента обработан успешно, и ответ сервера содержит затребованные данные.

201 Created
Этот код состояния используется в случае создания нового URI. Вместе с этим кодом результата сервер выдает заголовок Location (см. главу 19), который содержит информацию о том, куда были помещены новые данные.

202 Accepted
Запрос принят, но обрабатывается не сразу. В теле содержимого ответа сервера может быть дана дополнительная информация о данной транзакции. Гарантии того, что сервер в конечном итоге удовлетворит запрос, нет, даже несмотря на то, что на момент приема запрос выглядел допустимым.

203 Non-Authoritative Information
Информация в заголовке содержимого взята из локальной копии или у третьей стороны, а не с исходного сервера.

204 No Content
Ответ содержит код состояния и заголовок, но тело содержимого отсутствует. При получении этого ответа броузер не должен обновлять свой документ. Обработчик чувствительных областей изображений может возвращать этот код, когда пользователь щелкает на бесполезных или пустых участках изображения.

205 Reset Content
Браузер должен очистить форму, используемую в данной транзакции, для дополнительных входных данных. Полезен для CGI-приложений, требующих ввода данных.

206 Partial Content
Сервер возвращает лишь часть данных затребованного объема. Используется в ответе на запрос с указанием заголовка Range. Сервер должен указать диапазон, включенный в ответ, в заголовке Content-Range.

Переадресация

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

300 Multiple Choices
Затребованный URI обозначает более одного ресурса. Например, URI может обозначать документ, переведенный на несколько языков. В теле содержи- мого, возвращенном сервером, может находиться перечень более конкретных данных о том, как выбрать ресурс правильно.

301 Moved Permanently
Затребованный URI уже не используется сервером, и указанная в запросе операция не выполнена. Новое местонахождение затребованного документа указывается в заголовке Location. Во всех последующих запросах данного документа следует указывать новый URI.

302 Moved Temporarily
Затребованный URI перемешен, но лишь временно. Заголовок Location указывает на новое местонахождение. Сразу же после получения этого кода состояния клиент должен разрешить запрос при помощи нового URI, но во всех последующих запросах необходимо пользоваться старым URI.

303 See Other
Затребованный URI можно найти по другому URI (указанному в заголовке Location). Его следует выбрать методом GET по данному ресурсу.

304 Not Modified
Это код ответа на заголовок lf-Modified-Since, если URI не изменялся с указанной даты. Тело содержимого не посылается, и клиент должен использовать свою локальную копию.

305 Use Proxy
Доступ к затребованному URI должен осуществляться через proxy-сервер, указанный в заголовке Location.

Неполные запросы клиента

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

400 Bad Request
Означает, что сервер обнаружил в запросе клиента синтаксическую ошибку.

401 Unauthorized
Этот код результата, передаваемый с заголовком WWW-Authenticate, показывает, что пославший запрос пользователь не имеет необходимых полномочий и что при повторении запроса с указанием данного URI пользователь должен такие полномочия предоставить.

402 Payment Required
Этот код в HTTP еще не реализован.

403 Forbidden
Запрос отклонен по той причине, что сервер не хочет (или не имеет возможности) ответить клиенту.

404 Not Found
Документ по указанному URI не существует.

405 Method Not Allowed
Этот код выдается с заголовком Allow и показывает, что метод, используемый клиентом, для данного URI не поддерживается.

406 Not Acceptable
Ресурс, указанный клиентом по данному URI, существует, но не в том формате, который нужен клиенту. Вместе с этим кодом сервер выдает заголовки Content-Language, Content-Encoding и Content-Type.

407 Proxy Authentication Required
Proxy-сервер должен санкционировать запрос перед тем, как пересылать его. Используется с заголовком Proxy-Authenticate.

408 Request Time-out
Этот код ответа означает, что клиент не передал полный запрос в течение некоторого установленного промежутка времени (который обычно задается в конфигурации сервера) и сервер разрывает сетевое соединение.

409 Conflict
Данный запрос конфликтует с другим запросом или с конфигурацией сервера. Информацию о конфликте следует возвратить в информационной части ответа.

410 Gone
Данный код показывает, что затребованный URI больше не существует и навсегда удален с сервера.

411 Length Required
Сервер не примет запрос без указанного в нем заголовка Content-Length.

412 Precondition Failed
Результат вычисления условия, заданного в запросе одним или несколькими заголовками if. . ., представляет собой "ложь".

413 Request Entity Too Large
Сервер не будет обрабатывать запрос, потому что его тело слишком велико.

414 Request-URI Too Long
Сервер не будет обрабатывать запрос, пот ому что его URI слишком длинный.

415 Unsupported Media Type
Сервер не будет обрабатывать запрос, потому что его тело имеет неподдерживаемый формат.

Ошибки сервера

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

500 Internal Server Error
При обработке запроса на сервере один из его компонентов (например, CGI-программа) выдал аварийный отказ или столкнулся с ошибкой конфигурации.

501 Not Implemented
Клиент запросил выполнение действия, которое сервер выполнить не может.

502 Bad Gateway
Сервер (или proxy-сервер) получил недопустимые ответы другого сервера (или proxy-сервера).

503 Service Unavailable
Данный код означает, что данная служба временно недоступна, но в будущем доступ к ней будет восстановлен. Если сервер знает, когда это произойдет, может быть также выдан заголовок Retry-After.

504 Gateway Time-out
Этот ответ похож на 408 (Request Time-out) , за исключением того, что шлюз или уполномоченный сервер превысил лимит времени.

505 HTTP Version not supported
Сервер не поддерживает версию протокола HTTP, использованную в запросе.