При любом HTTP запросе сервер сначала возвращает код ответа
на HTML запрос. Проанализировав этот ответ можно сделать вывод о том, был ли
запрос выполнен успешно, или в процессе обработки запроса произошла ошибка.
Коды ответа HTTP сервера могут
принадлежать следующим группам:
1xx -
Информационный ответ
2xx -
Успешная обработка запроса
3xx -
Переадресация (редирект)
4xx -
Неполный запрос к серверу
5xx - При
обработке запроса произошла ошибка
Естественно,
что кодов ответа в каждой группе не по 100. Клиент (чаще всего это браузер)
получая от сервера тот или иной код сам решает как его интерпретировать. Если
код клиенту неизвестен, то как минимум он может определить диапазон кода и
повести себя соответствующим образом.
Информационные ответы:
100 Continue
Часть
запроса принята. Как правило это занчит, что можно отправлять следующую часть
запроса.
101
Switching Protocols
Сервер
производит переключение протоколов в соответствии с заголовком Upgrade. Успешная
обработка запроса
200 OK
Запрос
обработан успешно.
201 Created
Данный код
используется когда происходит создание нового URI. Вместе с кодом сервер
посылает заголовок Location с адресом нового URI.
202
Accepted
Запрос
принят и обрабатывается. В теле ответа как правило содержится дополнительная
информация.
203
Non-Authoritative Information
Ответ
означает, что информация получена из ненадежного источника (например, с другого
сервера).
204 No
Content
Запрос обработан,
но в ответ ничего не возвращается. Как правило используется если в ответ на
запрос не нужно обновлять содержимое документа.
205 Reset
Content
Означает,
что содержимое документа должно быть сброшено в начальное состояние. Обычно
используется при очистке форм ввода данных..
206 Partial
Content
При данном
ответе возвращается лишь часть данных. Обычно используется если клиент запросил
часть данных с использованием заголовка Range. Переадресация
300
Multiple Choices
Означает,
что существует несколько вариантов запрашиваемой страницы. Например, сайт,
переведенный на несколько языков.
301 Moved
Permanently
Данный
ответ означает, что данный документ был перемещен и клиенту следует изменить
все ссылки на данный документ его новым местоположением.
302 Moved
Temporarily
Документ
временно перемещен в другое место.
303 See
Other
Данный
документ можно найте по другим ссылкам. Список ссылок передан в теле ответа.
304 Not
Modified
Данный код
ответа возвращается если был запрос lf-Modified-Since, и документ не изменялся
с указанной даты.
305 Use
Proxy
Доступ к
документу должен осуществляться через proxy-сервер, адрес которого указан в
Location. Неполные запросы клиента
400 Bad Request
Ошибка в
строке запроса.
401
Unauthorized
Ответ
означает, что пользователь не имеет достаточных прав для просмотра документа.
402 Payment
Required
Данный код
зарезервирован на будущее. Видимо будет означать, что запрошенный документ
является платным ресурсом.
403
Forbidden
Запрос не
будет выполнен по какой-либо причине.
404 Not
Found
Запрашиваемого
документа нет на сервере.
405 Method
Not Allowed
Означает,
что метод, используемый клиентом, не поддерживается.
406 Not
Acceptable
Ресурс
существует, но не в той форме, что клиент запросил. Например, может различаться
язык документа.
407 Proxy
Authentication Required
Для
Proxy-сервера необходима авторизация.
408 Request
Time-out
Сервер
разорвал соединение из-за превышенного таймаута.
409
Conflict
Запрос
конфликтует с другим запросом.
410 Gone
Данный код
означает, что документ был удален с сервера.
411 Length
Required
Пропущено
необходимое поле в заголовке запроса Content-Length.
412
Precondition Failed
Условие
указанное в заголовке не выполняется.
413 Request
Entity Too Large
Слишком
большое тело запроса.
414
Request-URI Too Long
Слишком
длинный URI в запросе.
415
Unsupported Media Type
Сервер не
поддерживает указанный формат данных.
Ошибки
сервера
500
Internal Server Error
Внутренняя
ошибка сервера. Например, ошибка при выполнении скрипта.
501 Not Implemented
Недопустимое действие.
502 Bad Gateway
Недопустимый
ответ с другого ресурса.
503 Service
Unavailable
Данный код
означает, что указанный сервис временно недоступен.
504 Gateway
Time-out
Превышен
таймаут ожидания от другого ресурса
505 HTTP
Version not supported
Данная
версия протокола HTTP не поддерживается сервером.
|