Интернет (материалы сборника “Бизнес, Секс, Автомобиль...”)

Коды ответов сервера

 

Коды ответов сервера.


В первой строке ответа 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

Этот код состояния используется в случае создания нового URL. Вместе с этим кодом результата сервер выдает заголовок 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

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

301 Moved Permanently

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

302 Moved Temporarily

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

303 See Other

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

304 Not Modified

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

305 Use Proxy

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

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

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

400 Bad Request

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

401 Unauthorized

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

402 Payment Required

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

403 Forbidden

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

404 Not Found

Документ по указанному URL не существует.

405 Method Not Allowed

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

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-URI Too Long

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

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, использованную в запросе



Оставьте свой комментарий к статье!


Комментарии:

Комментариев еще нет. Вы будете первым!



Ваш комментарий к статье: Правила комментирования:

Имя (обязательно)
E-mail (не показывается, обязательно)
Защита от спама: введите сумму цифр 8+7= ? (обязательно)


Поиск по сайту:







[ В раздел ]

[ Главная ] [ Разделы сборника ] [ Контакты ]
Copyright © 2007 - 2024 by Геннадий Нестеров