Коды ответов сервера: полный список

Коды ответов сервера: полный список

03.11.2022
Автор: HostZealot Team
2 мин.
1593

Коды ответов сервера: полный список

Когда браузер или поисковой робот обращаются к серверу с запросом, ему в ответ автоматически выдается определенный код с обозначением статуса. Всякий код состояния HTTP является трехзначным и может быть в пределах от 100 до 526. Диапазон периодически расширяют для описания каких-то новых состояний, но происходит такое нечасто, поэтому описанных в этой статье кодов ответов сервера будет достаточно в 99% случаев.

Группы ответов сервера

Существует 5 категорий ответов:

  1. Информационные (Informational) – в диапазоне от 100 до 105.
  2. Успешные (Success) – в диапазоне от 200 до 226.
  3. Перенаправление (Redirection) – от 300 до 307.
  4. Ошибки клиента (Client Error) – от 400 до 499.
  5. Ошибки сервера (Server Error) – от 500 до 526.

Рассмотрим подробнее самые распространенные коды каждой из этих категорий.

1xx: группа информационных ответов



  1. Код ответа Расшифровка ответа Версия HTTP
  2. 100 «Continue» Информирует о принятии сервером запроса и инициализации дальнейшей обработки. То есть клиенту дозволяется продолжить пересылку заголовков. HTTP/1.1
  3. 101 «Switching Protocols» Этот код ответа сервера указывает, что TCP-соединение следует использовать для другого протокола. В поле заголовка Update также обязательно указывается несколько подходящих протоколов. HTTP/1.1
  4. 102 «Processing» Сообщает об успешном принятии запроса, но также говорит о том, что на его обработку потребуется значительно больше времени, чем обычно. Если вы видите такой код – не спешите разрывать соединение с сервером, дождитесь завершения обработки. HTTP/1.1
  5. 103 «Early Hints» Этот код обеспечивает ранний возврат метаинформации – части заголовков. Используется в ситуациях, когда заголовки полного ответа невозможно сформировать быстро. HTTP/1.1


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

2xx: группа успешных ответов



  1. Код ответа Расшифровка ответа Версия HTTP
  2. 200 «OK» Информирует об успешном завершении обработки запроса. Если клиент запрашивал данные, их можно посмотреть в полученном заголовке или в теле ответа. HTTP/1.0 и более новые
  3. 201 «Created» Сообщает об успешном выполнении запроса о создании нового ресурса. Адрес нового ресурса прикрепляется к телу ответа. HTTP/1.0 и более новые
  4. 202 «Accepted» Принятие запроса в обработку без окончательного завершения. Клиент может не дожидаться полной передачи сообщения, так как этот процесс может занять длительное время. HTTP/1.0 и более новые
  5. 203 «Non-Authoritative Information» Этот код ответа сервера аналогичен 200 «ОК» с той разницей, что информация берется не из первоисточника, а потому её актуальность под вопросом. HTTP/1.0 и HTTP/1.1
  6. 204 «No Content» Успешная обработка запроса, но клиент получает только заголовки без содержимого. Сами заголовки можно использовать для обновления метаданных. HTTP/1.0 и более новые
  7. 205 «Reset Content» Только на HTTP/1.1
  8. 206 «Partial Content» Сигнализирует о частичном выполнении GET-запроса. При таком ответе заголовок Content-Range будет содержать один или несколько байтовых диапазонов содержимого. Только на HTTP/1.1
  9. 207 «Multi-Status» Сообщает об одновременной передаче сервером результатов нескольких независимых операций. Появился в WebDAV


3xx: сообщения о перенаправлении

Эта группа ответов сервера информирует о том, что для дальнейшего выполнения операции требуется инициировать другой запрос на определенный URL. Подходящий URL можно прочитать в заголовке Location.



  1. Код ответа Расшифровка ответа Версия HTTP
  2. 300 «Multiple Choice» На указанный URL-адрес имеется несколько вариантов предоставления ресурса по типу MIME, языку или другим критериям. В теле ответа сервер присылает список возможных ответов, из которых клиент должен выбрать наиболее подходящий. Используется крайне редко в связи с тем, что унифицированного метода выбора одного ответа не существует. HTTP/1.0 и более новые
  3. 301 «Moved Permanently» Запрашиваемый документ окончательно перенесен по новому URL-адресу. Сам адрес указывается в поле Location. HTTP/1.0 и более новые
  4. 302 «Found» Сообщает о временной доступности запрашиваемого документа по указанному URL-адресу, который также можно прочитать в поле Location. HTTP/1.0 и более новые
  5. 303 «See Other» Этот код ответа сервера призван перенаправить клиента на другой URL. Присылается в случае, если запрошенный документ временно доступен по другому адресу. HTTP/1.1 и более новые
  6. 304 «Not Modified» Сервер присылает этот код, когда клиент запрашивает документ методом GET, используя заголовок If-Modified-Since или If-None-Match. При этом сообщение сервера не должно содержать тела. Для просмотра интересующего документа следует отправить запрос на другой URL, указанный в заголовке Location. HTTP/1.0 и более новые
  7. 305 «Use Proxy» Запрос к интересующему ресурсу необходимо осуществлять через proxy-сервер, адрес которого можно найти в строке заголовка Location ответа сервера. HTTP/1.1 и более новые
  8. 306 «Switch Proxy» Запрос к ресурсу необходимо осуществлять через прокси, указанный сервером в заголовке ответа. На сегодняшний день код не используется. Только HTTP/1.1
  9. 307 «Temporary Redirect» Сообщает, что запрошенный ресурс был временно перемещен на URL-адрес, указанный в заголовке Location. Введен в RFC 2616 с обновлением HTTP/1.1
  10. 308 «Permanent Redirect» Сообщает, что запрошенный ресурс был перманентно, то есть навсегда, перемещен на URL-адрес, указанный в заголовке Location. Введен в RFC 7238


Коды ответов сервера: полный список

4xx: группа ответов об ошибках клиента

Коды из этой группы сообщают об ошибках на стороне клиента. Как правило, в теле сообщения указывается гипертекстовое пояснение для пользователя. Рассмотрим основные.



  1. Код ответа Расшифровка ответа Версия HTTP
  2. 400 «Bad Request» В запросе клиента обнаружена синтаксическая ошибка. HTTP/1.0 и выше
  3. 401 «Unauthorized» Чтобы получить доступ к ресурсу, необходимо пройти аутентификацию. HTTP/0.9 и выше
  4. 402 «Payment Required» Такой ответ можно получить от сервера с платным пользовательским сервисом. HTTP/0.9 и 1.1
  5. 403 «Forbidden» Запрос не может быть выполнен из-за установленных ограничений по уровню доступа. Проще говоря, запрос клиента не может быть выполнен из-за ограничений, установленных администратором или разработчиком софта. HTTP/1.0 и выше
  6. 404 «Not Found» Легендарная и хорошо известная всякому обывателю ошибка, возникающая в случае, если на запрашиваемом URL отсутствует какой-либо ресурс. HTTP/1.0 и выше
  7. 405 «Method Not Allowed» Метод клиента невозможно применить к данному ресурсу из-за ручной деактивации. Такой код ответа сервера может возвращаться клиенту в ответ на попытки получить доступ к ресурсам посредством методов GET или HEAD. HTTP/1.1 и выше
  8. 406 «Not Acceptable» Запрашиваемый URL не соответствует переданным в заголовке характеристикам. В ответе сервера можно прочитать список допустимых характеристик. HTTP/1.1 и выше
  9. 407 «Proxy Authentication Required» Чтобы получить доступ к ресурсу, необходимо пройти аутентификацию для прокси-сервера. HTTP/1.1 и выше
  10. 408 «Request Timeout» Выдается в случае, если время ожидания сервером ответа от клиента истекает. Часто встречается на сайтах с двухфакторной аутентификацией, на платежных системах и других ресурсах, где ответ от клиента на какой-либо запрос должен последовать в ограниченное время. HTTP/1.1 и выше
  11. 409 «Conflict» Сообщает о невозможности выполнения запроса по причине конфликтного обращения. Например, если клиент пытается как-либо изменить ресурс с помощью команды PUT. HTTP/1.1 и выше
  12. 410 «Gone» Присылается в случае, если ресурс, ранее находившийся по указанному URL, был перенесен на другой адрес. При этом новый адрес серверу неизвестен. HTTP/1.1 и выше
  13. 411 «Length Required» Клиенту следует указать Content-Length в заголовке запроса и затем повторно обратиться к серверу. HTTP/1.1 и выше
  14. 412 «Precondition Failed» Клиент указал в своих заголовках условия, которые сервер не может выполнить. HTTP/1.1 и выше
  15. 413 «Payload Too Large» Сообщает о превышении допустимого размера тела запроса. HTTP/1.1 и выше
  16. 414 «URI Too Long» Клиент указал слишком длинный URL-адрес. Если для передачи параметров вы используете метод GET, следует попробовать POST. HTTP/1.1 и выше
  17. 415 «Unsupported Media Type» Сервер отказывается обрабатывать данные этого типа в рамках применяемого метода. Можно попробовать использовать другой метод. HTTP/1.1 и выше
  18. 416 «Range Not Satisfiable» Диапазон, указанный в заголовке Range, не может быть выполнен. При передаче байтовых диапазонов сервер в ответ выдаст реальный размер в поле Content-Range заголовка, его можно использовать при передаче типа multipart/byteranges. HTTP/1.1 и выше
  19. 417 «Expectation Failed» Данные из поля Expect не удовлетворяют требованиям сервера, поэтому запрос не может быть выполнен. HTTP/1.1 и выше
  20. 418 «I’m a teapot» Шуточный код, происходящий из 1998 года. Современными серверами не поддерживается.
  21. 419 «Authentication Timeout» Используется как альтернатива 401, когда проверка подлинности пройдена, но доступ к определенным ресурсам на сервере отсутствует со стороны клиента. HTTP/1.1 и выше
  22. 421 «Misdirected Request» Сервер сообщает о неудачной попытке перенаправить запрос на другой сервер, который не способен дать ответ.
  23. 422 «Unprocessable Entity» Информирует об успешном принятии запроса и распознавании указанных видов данных. В то же время, из-за определенной логической ошибки провести операцию не может. Введен в WebDAV
  24. 423 «Locked» К запрашиваемому ресурсу нет доступа, так как используемый метод по отношению к нему неприменим. Введен в WebDAV
  25. 424 «Failed Dependency» Сообщает о невозможности выполнения запроса в связи с тем, что предыдущая операция, от которой зависел этот запрос, еще не была завершена. Введен в WebDAV
  26. 425 «Too Early» Сервер отказывается брать на себя риски по обработке «ранней информации». Введен в RFC 8470 с целью обеспечения защиты от атак повторения при использовании 0-RTT в TLS 1.3
  27. 426 «Upgrade Required» Клиенту необходимо обновить протокол. Детали содержатся в полях Upgrade и Connection. Введен в RFC 2817 для обеспечения возможности перехода к TLS через HTTP
  28. 428 «Precondition Required» Сообщает о необходимости использовать в запросе заголовков условий вроде If-Match Введен в RFC 6585
  29. 429 «Too Many Requests» Клиент пытается отправить слишком много запросов за короткий промежуток времени. Код ошибки призван защитить от DDoS. В теле сообщения можно также увидеть время, через которое можно будет отправить повторный запрос. Введен в RFC 6585
  30. 431 «Request Header Fields Too Large» Сообщает о превышении допустимой длины заголовка. Введен в RFC 6585
  31. 434 «Requested host unavailable» Свидетельствует о недоступности запрашиваемого адреса.
  32. 449 «Retry With» Чтобы выполнить запрос, серверу нужно больше информации.
  33. 451 «Unavailable For Legal Reasons» Целевой ресурс недоступен из-за юридических процедур. Можно столкнуться в тех случаях, когда сайт блокируется по решению суда или по требованию органов правопорядка.

5xx: группа ответов об ошибках сервера

Эта группа ответов сервера сообщает о случаях необработанных исключений, обнаруженных при попытке выполнения операции на стороне сервера.



  1. Код ответа Расшифровка ответа Версия HTTP
  2. 500 «Internal Server Error» Сообщает о внутренней ошибке на стороне сервера, выходящей за рамки остальных ошибок этой группы. HTTP/1.0 и выше
  3. 501 «Not Implemented» Сервер не может обработать запрос, так как не понимает указанный метод. Если сервер понимает метод, но отказывается выполнять запрос из-за внутренних ограничений, выдается код «405». HTTP/1.0 и выше
  4. 502 «Bad Gateway» Выдается, если запрос отправлен прокси-серверу или серверу, выполняющему роль шлюза. Как правило, «промежуточный» сервер попытается перенаправить запрос на вышестоящий сервер – и, если получает от него некорректный ответ, то клиенту выдается ошибка 502. HTTP/1.0 и выше
  5. 503 «Service Unavailable» На сервере временно отсутствует возможность обработки запросов в связи с техническим обслуживанием или перезагрузкой. HTTP/1.0 и выше
  6. 504 «Gateway Timeout» Выполняя роль шлюза или proxy-сервера, сервер не получил ответа от вышестоящего сервера за какой-то период времени. HTTP/1.1 и выше
  7. 505 «HTTP Version Not Supported» На сервере отсутствует поддержка протокола HTTP указанной версии. HTTP/1.1 и выше
  8. 507 «Insufficient Storage» Информирует о том, что на сервере недостаточно места для завершения операции Введен в WebDAV
  9. 508 «Loop Detected» Операция прервана по причине обнаружения бесконечного цикла при обработке запроса без ограничения глубины. Введен в WebDAV
  10. 509 «Bandwidth Limit Exceeded» Выдается в случае, если веб-площадка превысила установленные для неё ограничения по трафику. В этом случае стоит обратиться напрямую к хостинг-провайдеру.
  11. 510 «Not Extended» На сервере отсутствует расширение, которое пытается использовать клиент в своем обращении. Как правило, ответ сервера содержит данные о доступных расширениях на стороне сервера.
  12. 511 «Network Authentication Required» Сообщает о необходимости авторизации перед тем, как можно будет выполнить указанный запрос. Введен стандартом RFC 6585
  13. 520 «Unknown Error» Сервер CDN не может обработать ошибку сервера.
  14. 521 «Web Server Is Down» Веб-сервер отклоняет подключение CDN.
  15. 522 «Connection Timed Out» CDN не удается подключиться к веб-серверу.
  16. 525 «SSL Handshake Failed» Ошибка рукопожатия SSL между web-сервером и сервером CDN.
  17. 526 «Invalid SSL Certificate» Неудачная попытка подтверждения сертификата шифрования SSL.


# Серверы Поделиться:
Статьи по Теме