Тема 1: Знакомство с HTTP протоколом
Здравствуйте, уважаемые посетители сайта ZametkiNaPolyah.ru. Начнем знакомиться с протоколом HTTP в рубрике Серверы и протоколы…
Привет, читатель блога ZametkiNaPolyah.ru! Продолжим знакомиться с протоколом HTTP в рубрике Серверы и протоколы и ее разделе HTTP протокол. В завершении рассказа о кодах состояния HTTP сервера я составил небольшой справочник кодов состояния HTTP сервера, в котором вы можете найти список кодов состояния HTTP сервера, которые есть в стандарте HTTP 1.1.
Содержание статьи:
Справочник HTTP кодов состояния мы начнем с информационных кодов HTTP. Ниже приведен список информационных кодов HTTP сервера. Напомню, что информационные коды состояния используются в качестве предварительного ответа HTTP сервера на запрос клиента.
Информационный код состояния | Описание информационного кода состояния |
100 Continue | Информационный код состояния HTTP сервера 100: продолжай Код состояния 100 говорит о том, что запрос получен, но находится в процессе обработки |
101 Switching Protocols | Информационный код состояния HTTP сервера 100: переключи протокол Код состояния 101 говорит о том, что сервер переключает протокол |
Справочник успешных кодов состояния HTTP. Ниже приведен список успешных кодов HTTP сервера. Напомню, что успешные коды состояния, говорят клиенту о том, что его запрос успешно принят, понят и обработан.
Успешный код состояния | Описание успешного кода состояния HTTP севера |
200 OK | Успешный код состояния HTTP сервера 200: хорошо Код состояния 200 говорит клиенту о том, что его запрос удачно выполнен. |
201 Created | Успешный код состояния HTTP сервера 201: создан Код состояния 201 сообщает нам о том, что новый ресурс был создан успешно. |
202 Accepted | Успешный код состояния HTTP сервера 202: принято Код состояния 202 сообщает клиенту о том, что HTTP запрос успешно принят на обработку, но обработка еще не завершена, в этом случае сервер может отказать в обслуживание запроса клиента. |
203 Non-authoritative Information | Успешный код состояния HTTP сервера 203: не авторская информация Код состояния 203 сообщает клиенту о том, что возвращенная в заголовке HTTP объекта информация – это не оригинал, который есть на первоначальном сервере, а документ, собранный из локальных копий или копий третьей стороны, возможно даже, что данный документ — это кэш HTTP сервера. |
204 No Content | Успешный код состояния HTTP сервера 204: нет содержимого Код состояния 204 говорит клиенту о том, что в ответном HTTP сообщении нет тела (про тело объекта HTTP). |
205 Reset Content | Успешный код состояния HTTP сервера 205: сбросить содержимое Если браузер получит код состояния 205, то он должен очистить форму, чтобы дать пользователю ввести дополнительные данные. |
206 Partial Content | Успешный код состояния HTTP сервера 206: частичное содержимое Код состояния 206 говорит браузеру о том, что HTTP сервер выполнил частичный GET запрос клиента (про методы HTTP). Чтобы получить такой код запрос клиента должен содержать поле заголовка Range, который указывает диапазон (вспоминаем диапазоны значений и HTTP параметры). |
Справочник кодов перенаправления HTTP сервера. Ниже приведен список кодов перенаправления HTTP сервера. Напомню, что коды перенаправления HTTP сервера говорят клиенту о том, что для успешного завершения запроса ему необходимо выполнить какие-либо действия. Обычно браузеры выполняют эти действия, не спрашивая пользователя.
HTTP ответ | Описание кода состояния перенаправления |
300 Multiple Choices | HTTP код перенаправления 300: множественный выбор HTTP код состояния 300 говорит клиенту о том, что запрошенный ресурс имеет несколько представлений и клиент в праве выбрать одно из предлагаемых представлений. Действует ограничение в пять адресов максимум и используется для обсуждения содержимого в HTTP. |
301 Moved Permanently | HTTP код перенаправления 301: постоянно перемещен HTTP код состояния 301 говорит клиенту о том, что запрашиваемая страница была перенесена на новый адрес, обычно браузер автоматически переходит по новому адресу. |
302 Found | HTTP код перенаправления 302: временно перемещен HTTP код состояния 302 говорит клиенту о том, что запрашиваемый ресурс был временно перемещен на новый адрес. |
303 See Other | HTTP код перенаправления 303: смотри другой HTTP код состояния 303 говорит клиенту о том, что ответ на запрос может быть найден по другому URI (про URI в HTTP найдешь информацию здесь), новый запрос следует выполнять методом GET |
304 Not Modified | HTTP код перенаправления 304: не модифицирован HTTP код состояния 304 говорит клиенту о том, что сервер выполнил условный GET запрос, но документ никак не изменился. |
305 Use Proxy | HTTP код перенаправления 305: используй прокси HTTP код состояния 304 говорит клиенту о том, что запрошенный URL должен быть доступен через прокси, который указан в поле заголовка Location. |
306 Unused | HTTP код перенаправления 306: зарезервировано Код состояния 306 использовался в прошлой версии HTTP протокола, на данный момент он не используется, но зарезервирован стандартом HTTP. |
307 Temporary Redirect | HTTP код перенаправления 307: временно перемещен HTTP код состояния 307 говорит клиенту о том, что запрашиваемая страница временно переехала на новый адрес |
Справочник кодов ошибок HTTP клиента. Ниже приведен список кодов ошибок HTTP клиента. Напомню, что коды ошибок клиента говорят о том, что запрос не может быть выполнен по вине клиента или клиентского приложения.
Код ошибки HTTP клиента | Описание кода ошибки HTTP клиента |
400 Bad Request | Код состояния ошибки HTTP клиента 400: плохой запрос Такой код состояния ошибки клиента вы можете увидеть тогда, когда сервер не понял ваш запрос из-за синтаксической ошибке в HTTP запросе. |
401 Unauthorized | Код состояния ошибки HTTP клиента 401: не авторизован Такой код состояния ошибки клиента вы можете увидеть в том случае, если для доступа к ресурсу требуется аутентификация на HTTP сервере |
402 Payment Required | Код состояния ошибки HTTP клиента 402: требуется оплата Этот код состояния ошибки клиента на данный момент пока не используется, он предназначен для платных сервисов, а не для хостингов и интернет-провайдеров. |
403 Forbidden | Код состояния ошибки HTTP клиента 403: запрещено Такой код состояния ошибки клиента вы увидите в том случае, когда сервер вас прекрасно понял, но отказывается вам предоставлять доступ к ресурсу из-за того, что у вас недостаточно прав доступа из-за настроек безопасности HTTP сервера. |
404 Not Found | Код состояния ошибки HTTP клиента 404: не найдено Самый популярный код состояния ошибки клиента. Вы его можете увидеть в том случае, когда ошиблись, вводя URL в браузере. |
405 Method Not Allowed | Код состояния ошибки HTTP клиента 405: метод не дозволен Данный код состояния ошибки клиента можно увидеть в том случае, когда вы используете метод запроса, запрещенный в настройках HTTP сервера. |
406 Not Acceptable | Код состояния ошибки HTTP клиента 406: не приемлем Этот код состояния вы увидите в том случае, когда HTTP сообщение вашего клиента содержит неправильные параметры для указанного в нем URI. |
407 Proxy Authentication Required | Код состояния ошибки HTTP клиента 407: требуется установления подлинности через прокси-сервер Если вы видите этот код состояния ошибки клиента, то вам нужно пройти аутентификацию на прокси-сервере. |
408 Request Timeout | Код состояния ошибки HTTP клиента 408: истекло время ожидания запроса Этот код состояния ошибки HTTP клиента вы увидите тогда, когда сервер устал ждать от вас сообщение. |
409 Conflict | Код состояния ошибки HTTP клиента 409: конфликт Такой код состояния ошибки клиента будет появляться очень редко, когда будет происходить конфликт действий между двумя пользователями. |
410 Gone | Код состояния ошибки HTTP клиента 410: удален А этот код состояния ошибки клиента будет показан сервером в том случае, когда ресурс был доступен по указанному URI, но теперь его там нет. |
411 Length Required | Код состояния ошибки HTTP клиента 411: требуется длина Этот код состояния ошибки клиента появляется в том случае, когда серверу нужно обязательно указывать поле заголовка Content-Lenght |
412 Precondition Failed | Код состояния ошибки HTTP клиента 412: предусловие неверно Сервер вернет HTTP ответ с таким кодом состояния в том случае, когда он не смог выполнить ни одно из условий из запроса клиента. |
413 Request Entity Too Large | Код состояния ошибки HTTP клиента 413: объект запроса слишком велик А такой код ошибки клиента можно увидеть в том случае, когда тело запроса слишком большое и сервер его получить не смог. |
414 Request-url Too Long | Код состояния ошибки HTTP клиента 414: URI запроса слишком длинный Такой код ошибки клиента сервер выдаст в том случае, если URI запроса слишком длинный. |
415 Unsupported Media Type | Код состояния ошибки HTTP клиента 415: неподдерживаемый медиа тип Сервер может выдать такой код состояния ошибки клиента в том случае, если не захочет работать с указанным типом данных (типы данных в HTTP) тем методом, который указан в запросе клиента |
416 Requested Range Not Satisfiable | Код состояния ошибки HTTP клиента 416: запрашиваемый диапазон не достижим Данный код и ошибки клиента говорит нам о том, что диапазон фрагмента в поле заголовка Range указан неверно. |
417 Expectation Failed | Код состояния ошибки HTTP клиента 417: ожидаемое неприемлимо Код состояния ошибки клиента 417 появится в том случае, если сервер не сможет удовлетворить значению, указанному в поле заголовка Expect. |
В основе протокола HTTP лежит принцип взаимодействия клиент-сервер, сам протокол относится к седьмому или прикладному уровню эталонной модели сетевого взаимодействия. Архитектура клиент-сервер четко делит обязанности приложений на клиентские и серверные, HTTP протокол строго придерживается данной концепции и в нем есть даже специальные коды ошибок, которые происходят по вине сервера. Справочник кодов ошибок HTTP сервера. Ниже приведен список кодов ошибок HTTP сервера. Напомню, что коды ошибок сервера говорят о том, что сервер не может выполнить запрос клиента по каким-то своим внутренним причинам.
Код ошибки HTTP сервера | Описание кода ошибки HTTP сервера |
500 InternalServerError | Код состояния ошибки HTTP сервера 500: внутренняя ошибка сервера Если вы видите ошибку HTTP сервера с кодом 500, то знайте, что это может любая внутренняя ошибка HTTP сервера, которая не входит в рамки других ошибок, в том числе и ошибок, описанных в других классах. |
501 NotImplemented | Код состояния ошибки HTTP сервера 501: не реализовано Если вы видите ошибку HTTP сервера с кодом 501, то это означает, что сервер не может выполнить HTTP сообщение, полученное от клиента, из-за ограниченного функционала. Ошибка сервера 501 может возникнуть из-за настроек сервера. Часто ошибка 501 возникает из-за того, что сервер не может распознать метод, указанный в запросе. |
502 BadGateway | Код состояния ошибки HTTP сервера 502: ошибка шлюза Если вы видите ошибку HTTP сервера с кодом 502, то это означает, что HTTP сервер действует в качестве шлюза или прокси-сервера и при этом он получил недопустимый ответ от следующего в цепочке запросов сервера, к которому обращался при попытке выполнить запрос. |
503 ServiceUnavailable | Код состояния ошибки HTTP сервера 503: сервис недоступен Если вы видите ошибку HTTP сервера с кодом 503, то это означает, что в настоящее время сервер недоступен из-за его перегрузки или он находится на техническом обслуживание. Если сервер знает о продолжительности задержки, то вместе с кодом ошибки 503, он может указать время в поле заголовка Retry-After. |
504 GatewayTimeout | Код состояния ошибки HTTP сервера 504: истекло время ожидания Если вы видите ошибку HTTP сервера с кодом 504 возникает в том случае, когда HTTP сервер действует в роли прокси-сервера или шлюза (сервер Apache может выступать и в той и в другой роли) и не получил своевременного ответа от следующего сервера, к которому он обращался, чтобы выполнить запрос. |
505 HTTP VersionNotSupported | Код состояния ошибки HTTP сервера 505: сервис недоступен Если вы видите ошибку HTTP сервера с кодом 505, то это означает, что сервер не поддерживает или отказывается поддерживать версию HTTP протокола (кстати, версия — это очень важный параметр HTTP протокола, который определяет, как будет установлено HTTP соединение), указанную в запросе. |
Не забывайте делиться своим мнением в комментариях и оставлять отзывы, это поможет сделать нашу работу лучше, с уважением ZametkiNaPolyah.ru!
Pingback: Антон
Pingback: Юлия
Pingback: Ильсур
Ильсур, ответили про коды состояния 🙂
Ильсур, если говорить по простому то хттп код состояния нужен что бы браузеру сказать как сервер понял клиента или что клиенту надо сделать, что бы всё гуд было. А вообще, если хочешь узнать подробнее почитай блог автора, тут всё подробно для новичка написано. Будешь знать и понимать и для чего коды состояния нужны и для чего методы используются, да и вообще как HTTP протокол работает.