Содержание

Коды состояний HTTP

511 код ответа означает, что клиенту необходима авторизация для получения доступа к сети.

Ответ должен содержать ссылку на ресурс, на котором пользователь сможет авторизоваться (например с HTML формой)

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

Статус 511 НЕ ДОЛЖЕН генерироваться исходными серверами; он предназначен для использования путем перехвата прокси-серверов, которые вставляются в качестве средства контроля доступа к сети.

Ответы с кодом состояния 511 НЕ ДОЛЖНЫ храниться в кэше.

Код состояния 511 разработан для смягчения проблем, вызванных «перехватывающими порталами» для программного обеспечения (особенно агентов, не являющихся браузерами), которое ожидает ответа от сервера, к которому был сделан запрос, а не от промежуточной сетевой инфраструктуры. Он не предназначен для поощрения развертывания скрытых порталов, а только для ограничения наносимого ими ущерба.

Сетевой оператор, желающий потребовать некоторой аутентификации, принятия условий или другого взаимодействия с пользователем перед предоставлением доступа, обычно делает это путем идентификации клиентов, которые этого не сделали («неизвестные клиенты»), используя свои MAC-адреса.

Неизвестные клиенты затем блокируют весь трафик, за исключением TCP-порта 80, который отправляется на HTTP-сервер («сервер входа в систему»), предназначенный для «входа в систему» неизвестных клиентов, и, конечно же, трафик на сам сервер входа в систему.

Обычно ответ, содержащий код состояния 511, не поступает от исходного сервера, указанного в URL-адресе запроса. Это создает множество проблем с безопасностью; например, атакующий посредник может вставлять файлы cookie в пространство имен исходного домена, может наблюдать файлы cookie или учетные данные HTTP-аутентификации, отправленные пользовательским агентом, и так далее.

Однако эти риски не уникальны для кода состояния 511; другими словами, адаптивный портал, который не использует этот код состояния, вызывает те же проблемы.

Также обратите внимание, что связанные порталы, использующие этот код состояния при подключении SSL или TLS (обычно порт 443), будут генерировать ошибку сертификата на клиенте.

Wikipedia

Этот ответ посылается не сервером, которому был предназначен запрос,
а сервером-посредником — например, сервером провайдера — в случае,
если клиент должен сначала авторизоваться в сети, например,
ввести пароль для платной точки доступа к Интернету.
Предполагается, что в теле ответа будет возвращена Web-форма авторизации или перенаправление на неё.
Введено в черновике стандарта RFC 6585

Коды ошибок и состояния HTTP: расшифровка ошибок на сайте


Web-сервер в ответ на каждый запрос пользователя выдает код HTTP-статуса ответа. Эти коды состоят из трех цифр и делятся на 5 групп. Первая цифра в коде является показателем статуса ответа. В случае невозможности выполнить запрос из-за ошибки клиента первая цифра в коде будет 4. Если ошибка случилась на стороне сервера, то код будет начинаться с цифры 5. Зная значения основных кодов, можно быстро устранить возникшие сбои.


Основные коды статусов http 4хх – ошибки на стороне клиента


  • 400 Bad Request («неверный запрос») – некорректно сформулированный запрос


Этот код означает, что запрос составлен неправильно. Возможно, в нем есть синтаксические ошибки или повреждены cookie.


  • 401 Unauthorized («неавторизован») – доступ запрещен


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


  • 402 Payment Required («Необходима оплата за запрос») – необходимо внести оплату


Этот код означает, что сервис, на который пользователь пытается зайти, платный.


  • 403 Forbidden («запрещено») – нет доступа


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


  • 404 Not Found («не найдено») – ресурс не найден


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


  • 405 Method Not Allowed («недопустимый метод») – невозможно применить


Этот код означает, что указанный метод не может быть применен к ресурсу.


  • 406 Not Acceptable («Неприемлемый запрос») – не приемлемо


Этот код означает, что найденный ресурс не соответствует параметрам, указанным в запросе.


  • 408 Request Timeout («Время запроса истекло») – время ожидания истекло


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


  • 409 Conflict («Конфликт») – конфликт


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


  • 410 Gone («Ресурс недоступен») – ресурс удален


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


  • 413 Request Entity Too Large («Тело запроса превышает допустимый размер») – большой объем запроса


Этот код означает, что клиент ввел настолько большой запрос, что сервер не может его обработать.


  • 424 Failed Dependency («Неверная зависимость») – невыполнимая зависимость


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


  • 426 Upgrade Required («Требуется обновление») – обновить


Этот код означает, что для выполнения запроса необходимо обновить протокол.


Основные коды ошибок сервера 5хх


  • 500 Internal Server Error («внутренняя ошибка сервера») – ошибка сервера


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


  • 502 Bad Gateway («ошибочный шлюз») – неправильный шлюз


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


  • 503 Service Unavailable («сервис недоступен») – служба недоступна


Этот код означает, что сервер перегружен запросами или находится на техническом обслуживании.


  • 504 Gateway Timeout («шлюз не отвечает») – таймаут шлюза


Этот код означает, что сервер, к которому обратился пользователь, является шлюзом или прокси, истек временной лимит на получение им ответа от back-end сервера.

Услуги, связанные с термином:

Коды ответов (ошибок) HTTP сервера: публикации CASTCOM

При любом HTTP запросе сервер сначала возвращает код ответа на HTML запрос. Проанализировав этот ответ можно сделать вывод о том, был ли запрос выполнен успешно, или в процессе обработки запроса произошла ошибка.

Коды ответа HTTP сервера могут принадлежать следующим группам:

  • 1xx — Информационный ответ
  • 2xx — Успешная обработка запроса
  • 3xx — Переадресация (редирект)
  • 4xx — Неполный запрос к серверу
  • 5xx — При обработке запроса произошла ошибка

Естественно, что кодов ответа в каждой группе не по 100. Браузер (клиент IE, Opera, Mozilla и т.д.), получая от сервера тот или иной код, сам решает как его интерпретировать. Если код клиенту неизвестен, то как минимум он может определить диапазон кода и повести себя соответствующим образом.

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

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

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 не поддерживается сервером.

REST HTTP коды состояния для неудачной проверки или недопустимого дубликата

200

Тьфу… (309, 400, 403, 409, 415, 422)… множество ответов пытаются угадать, поспорить и стандартизировать, какой код возврата лучше всего подходит для успешного запроса HTTP, но неудачного вызова REST .

Неправильно смешивать HTTP кодов состояния и REST кодов состояния.

Однако я видел много реализаций, смешивающих их, и многие разработчики могут не согласиться со мной.

HTTP коды возврата связаны с самим HTTP Request . Вызов REST выполняется с использованием запроса протокола передачи гипертекста и работает на более низком уровне, чем сам вызываемый метод REST. REST — это concept/approach,, и его выход — это бизнес-логический результат,а код результата HTTP- транспортный .

Например, возврат «404 Not found» при вызове /users/ сбивает с толку, потому что это может означать:

  • URI-это неправильно (HTTP)
  • Пользователи не найдены (REST)

«403 Forbidden/Access Denied» может означать:

  • Требуется специальное разрешение. Браузеры могут справиться с этим, запросив user/password. (HTTP)
  • Неправильные разрешения доступа, настроенные на сервере. (HTTP)
  • Вы должны быть аутентифицированы (REST)

И список может продолжаться с «500 Server error» (Apache/Nginx HTTP брошенная ошибка или ошибка бизнес-ограничения в REST)или другие ошибки HTTP и т. д…

Из кода трудно понять, что было причиной сбоя-сбой HTTP (транспортный) или сбой REST (логический).

Если запрос HTTP физически был выполнен успешно, он всегда должен возвращать код 200, независимо от того, найдена запись(ы) или нет. Потому что ресурс URI найден и был обработан сервером HTTP. Да, он может вернуть пустой набор. Можно ли получить пустую веб-страницу с результатом 200 в качестве HTTP, не так ли?

Вместо этого вы можете вернуть код 200 HTTP с некоторыми опциями:

  • «error» объект в JSON результат, если что-то пойдет не так
  • Пустой массив JSON / объект, если запись не найдена
  • Флаг bool result/success в сочетании с предыдущими опциями для лучшей обработки.

Кроме того, некоторые интернет-провайдеры могут перехватить ваши запросы и вернуть вам код 404 HTTP. Это не означает, что ваши данные не найдены, но это что-то не так на транспортном уровне.

От Wiki :

В июле 2004 года телекоммуникационный провайдер UK BT Group развернул систему блокировки
контента Cleanfeed, которая возвращает ошибку 404 на любой запрос
контента, идентифицированный Internet Watch как потенциально незаконный
Основа. Другие ISPs возвращают ошибку HTTP 403 «forbidden» в тех же
обстоятельствах. Практика использования поддельных 404 ошибок в качестве средства
сокрытия цензуры также была отмечена в Таиланде и Тунисе. В
Тунисе, где цензура была суровой до революции 2011 года,
люди узнали о природе фальшивых 404 ошибок и создали
воображаемого персонажа по имени «Ammar 404», который представляет «the invisible
censor».

Почему бы просто не ответить чем-нибудь подобным?

{
  "result": false,
  "error": {"code": 102, "message": "Validation failed: Wrong NAME."}
}

Google всегда возвращает 200 в качестве кода состояния в своем Geocoding API, даже если запрос логически не выполняется: https:/ / developers.google.com/maps/documentation/geocoding/intro#StatusCodes

Facebook всегда возвращает 200 для успешных запросов HTTP, даже если запрос REST не выполняется: https:/ / developers.facebook.com / docs/graph-api / using-graph-api/error-handling

Все просто, коды состояния HTTP предназначены для HTTP запросов. REST API-это ваш, определите ваши коды состояния.

Коды ответов сервера и ошибки. HTTP 200, 301, 404, 302, 500, 503, 550 и др.

Может сейчас эта тема не особо вас волнует, однако протяжении существования вашего сайта вы будете сталкиваться с кодами ответов сервера или «списком кодов состояния HTTP», связанных с различными элементами функциональной составляющей вашего сайта. Довольно часто встречаются такие ошибки, как 404 и 301, но существует огромное множество других ошибок, с которыми вы, возможно, не знакомы. Прежде чем паниковать, лучше прочтите эту статью, призванную рассказать вам о значения кодов различных ошибок, которые могут встретиться на вашем пути.

Некоторые из них напрямую связаны с сервером или с клиентской стороной, а некоторые уже не актуальны, поэтому вы вряд ли их увидите в реальной жизни, но ради интереса и фоновых знаний я включил и их.

Ниже представлена удобная таблица, при помощи которой вы сможете быстро и просто перейти к интересующей вас ошибке, и узнать ее значение:

1xx Информационные коды

100 Continue означает «работу в штатном режиме». Он означает, что пользователем был сделан хороший запрос, и сервер принялся к обработке. Это временный код ответа, имеющий место лишь тогда, когда пользователь ожидает финального ответа от сервера, который происходит только после того, как будет отослан последний пакет данных.

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

Это, наверное, один из самых простых серверных кодов, который означает, что пользователь сделал запрос на переключение типа протокола, используемого на веб-сервере, и сервер дал согласие на это.

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

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

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

2xx Success

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

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

Когда этот код может использоваться? В идеале – постоянно!
Вернуться в начало

В результате успешного выполнения запроса был создан новый ресурс. Например, запрос пользователя привел к созданию нового ресурса вроде новой страницы. Сервер-источник должен создать ресурс перед тем, как отправлять код 201. Если ресурс не может быть создан в данный момент, то сервер вместо этого должен отобразить код 202 (accepted).
Вернуться в начало

Запрос был принят на обработку, но она не завершена по каким-либо причинам. Запрос может и не быть выполнен до конца, в зависимости от того, был ли он отклонен в процессе обработки.

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

  • 203 Non-Authoritative Information

Сервер успешно обработал запрос, но передаваемая информация была взята не из первичного источника (резервной копии, другого сервера и т. д.) и поэтому может быть неактуальной. По сути, этот код очень похож на 200, но указывает на то, что информация была получена не из первоисточника.

Когда этот код может использоваться? Этот код может быть использован вместо 200, когда у отправителя есть причина полагать, что заголовки ответа от постороннего источника могут отличаться от того, что предоставил бы исходный сервер.
Вернуться в начало

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

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

Сервер успешно обработал запрос, но при этом не возвращает какой-либо контент. В отличие от 204, этот ответ требует от запрашиваемого обновить документ.

Когда этот код может использоваться? Обычно он используется тогда, когда пользователь заполняет форму, а сервер посылает браузеры запрос на очистку формы. Он схож с кодом 204, но просит пользователя сбросить документ после завершения – например, очистить HTML-форму после подтверждения.
Вернуться в начало

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

Когда этот код может использоваться? Этот кода обычно используется вследствие запрос If-Range, который применяется в мощных валидаторах кэша. Запрос также должен включать заголовки области, которые используется в качестве параметров диапазона возвратной информации.
Вернуться в начало

Сервер передаёт результаты выполнения сразу нескольких независимых операций, которые помещают в тело сообщения в виде XML-документа.
Вернуться в начало

3хх Перенаправление

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

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

Когда этот код может использоваться? Обычно этот код можно увидеть, когда сервер считает, что предоставленный пользователем (другими словами, браузером пользователя) URL имеет недостаточно точный указатель, и предлагает дальнейший выбор. Обычно это происходит тогда, когда пользователь использует URL на директорию не самого последнего уровня, и сервер предлагает ему выбор имеющихся файлов или директорий последующего уровня.
Вернуться в начало

Это довольно распространенный пользовательский запрос. Он означает, что запросы для данного ресурса (а также все последующие запросы) должны быть перенаправлены на заданный URL.

Когда этот код может использоваться? Когда страница более не существует, либо ссылка, ведущая на сторонний источник, уже не работает. 301 редирект сообщает пользователю о том, что запрашиваемый ресурс был перемещен (обычно это реализуется при помощи файла .htaccess, доступного на серверах Apache).
Вернуться в начало

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

Когда этот код может использоваться? У этого кода есть несколько применений, многие из которых не являются тем, для чего код был изначально предназначен. Изначально он представлял собой основной способ создания временного перенаправления. Тем не менее, сегодня существуют и другие – этичные, и неэтичные – способы его применения.
Вернуться в начало

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

Когда этот код может использоваться? Этот метод главным образом существует для того, чтобы позволить выводу данных POST-активированного скрипта перенаправить агента пользователя к выбранному ресурсу.
Вернуться в начало

Этот код означает, что пользователь запрашивает документ/ресурс только в том случае, если он подвергался изменениям с момента последнего обновления кэша данного документа.

Когда этот код может использоваться? Если в ответе от сервера сообщается о том, что параметры документа If-Modified-Since или If-Match не менялись с момента создания последнего кэша, то нет необходимости в повторной отправке ресурса.
Вернуться в начало

Этот код сообщает пользователю, что доступ к запрашиваемому ресурсу возможен только посредством прокси, указанного в ответе.

Когда этот код может использоваться? Этот код часто отображается в связи с мерами безопасности, и предоставляет доступ к запрашиваемым URL-ресурсам.
Вернуться в начало

Этот код изначально означал «последующие запросы должны использовать указанный прокси», но в данный момент не используется и зарезервирован.
Вернуться в начало

Этот код возвращается, если ресурс на данный момент временно доступен по другому URL, который также предоставляется в ответе. Этот код немного отличается от кода 302 – он представляет собой более определенную версию кода 302.

Когда этот код может использоваться? Он используется практически в тех же случаях, что и 302, но пользователь должен продолжить запросы по исходному URL при следующих запросах, либо до тех пор, пока не будет применен новых код ответа.
Вернуться в начало

4хх Ошибка клиента

Класс кодов 4xx предназначен для указания ошибок со стороны клиента, либо на то, что локации никогда (или уже) не существовало. Эти коды состояния применимы к любому методу запроса.

Запрос не может быть исполнен ввиду синтаксической ошибки.

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

Этот код связан с запросом к ресурсу, который требует авторизации. Ответ 401 указывает на то, что попытка авторизации была отклонена по тем данным, которые предоставил пользователь.

Когда этот код может использоваться? Когда пользователь совершает запрос к серверу, используя неправильные данные авторизации (имя пользователя и/или пароль).
Вернуться в начало

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

Когда этот код может использоваться? Старый сервис MobileMe от Apple выдавал ошибку 402, если аккаунт пользователя в MobileMe подозревался в злоупотреблении сервисом. Кроме того, Youtube использует это состояние, если конкретный IP-адрес уличен в совершении чрезмерного числа запросов, и тогда пользователю необходимо ввести CAPTHA.
Вернуться в начало

Пользователь пытается осуществить доступ к ресурсу, к которому у него нет доступа, и авторизация не изменит положения.

Когда этот код может использоваться? Когда сервер понял запрос, но он отказывается его выполнять из-за ограничений в доступе для клиента к указанному ресурсу. Обычно такое случается, когда ресурс не предназначен для публичного доступа.
Вернуться в начало

Все знакомы с этим кодом, не так ли? Он означает, что запрошенный ресурс не может быть найден, но в будущем – когда он, возможно, там появится, – к нему можно будет осуществить доступ. Также здесь допустимы последующие запросы от клиента. Тем не менее, в большинстве таких случаев применяется код перенаправления из семейства 3хх, и пользователя перенаправляют на альтернативный ресурс или локацию.

Когда этот код может использоваться? Довольно часто, особенно если страницу переместили или удалили. Зачастую в подобных случаях сервер автоматически генерирует направляющую страницу с ошибкой 404.
Вернуться в начало

Метод, при помощи которого совершается запрос к ресурсу, не доступен. Другими словами, ошибка возникает при попытке использовать GET на форме, которая требует ввод данных посредством POST, либо использовании метода PUT на ресурсе, который предназначен только для чтения.

Когда этот код может использоваться? Ошибки 405 встречаются в связи с конкретными объектами на веб-странице, для которых был совершен запрос. Например, когда строка запроса в скрипте отличается от пользовательского запроса, в котором подразумевается использование этого скрипта.
Вернуться в начало

Запрошенный ресурс способен генерировать только тот контент, который не применим к Accept-заголовкам в самом запросе. Браузер способен указывать серверу характеристики данных, которые данные будут принимать от сервера

Когда этот код может использоваться? Если форма файла запрошенного ресурса не совпадает с форматом, который пользователь способен распознать. Мы говорим сейчас о языке программирования, а не о французском!
Вернуться в начало

  • 407 Proxy Authentication Required

Как и код состояния 401, код 407 означает, что клиент сначала должен авторизоваться через прокси. Чтобы сделать это и авторизоваться, прокси должен вернуть поле с заголовком proxy-authenticate, который отвечает требованиям, представленным сервером.

Когда этот код может использоваться? Когда сервер думает, что запрос данных от клиента корректным, но доступ к ресурсу возможен только посредством авторизации через прокси-сервер.
Вернуться в начало

Время ожидания сервером передачи от клиента истекло.

Когда этот код может использоваться? Руководствуясь спецификацией W3 HTTP: «Клиент не сделал запрос в отведенный промежуток времени, который сервер был готов ждать. Клиент МОЖЕТ повторить запрос когда угодно».
Вернуться в начало

Указывает на то, что запрос не может быть выполнен из-за конфликтного обращения к ресурсу.

Когда этот код может использоваться? Вы можете получить такой код при загрузке файла на веб-сервер, где уже имеется более свежая версия этого файла, что приводит к конфликту в системе контроля версий.
Вернуться в начало

Такой ответ сервер посылает, если ресурс раньше был по указанному URL, но был удалён и теперь недоступен. Пользователю не следует повторять идентичный запрос.

Когда этот код может использоваться? Если более невозможно осуществить доступ к ресурсу посредством данного запроса, и сервер не владеет информацией о возможном месте расположения ресурса. Если у сервера есть подозрение, что документ в ближайшее время может быть восстановлен, то лучше клиенту передать код 404.
Вернуться в начало

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

Когда этот код может использоваться? Когда браузер не определяет длину запрашиваемого контента в заголовке запроса. Сервер не примет запрос без валидного поля заголовка content-length.
Вернуться в начало

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

Когда этот код может использоваться? Если заголовок запроса, который совершает валидный запрос к ресурсу, сообщает, что этот конкретный запрос не применим к этому конкретному ресурсу.
Вернуться в начало

  • 413 Request Entity Too Large

Код 413 отображается в тех случаях, когда сервер отказывается обработать запрос по причине слишком большого размера тела запроса.

Когда этот код может использоваться? При использовании в форме метода POST с контентом, по размеру большим, нежели сервер способен обработать.
Вернуться в начало

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

Когда этот код может использоваться? Когда POST-запрос конвертируется в GET-запрос. POST-запрос поддерживает отправку безграничного объема данных, связывая их с самим запросом. Тем не менее, если запрос должен быть конвертирован в GET-запрос, то запрос позволяет привязать данные формы к URL, что позволяет проводить информацию в больших размерах, чем это было доступно.
Вернуться в начало

  • 415 Unsupported Media-Type

Ответ 415 отправляется для указания о том, что сервер заметил, что часть запроса была сделана в неподдерживаемом формате.

Когда этот код может использоваться? Когда в запросе не указываются какие-либо типы медиа, которые поддерживаются ресурсом или сервером. Например, пользователь запрашивает изображение с расширением файла, которое не поддерживается сервером. Сервер знает о том, что было запрошено, но не понимает формат, в котором был запрошен ресурс.
Вернуться в начало

  • 416 Requested Range Not Satisfiable

Этот ответ приходит пользователю, когда тот запрашивает часть запрашиваемого ресурса, когда эта часть не может быть предоставлена.

Когда этот код может использоваться? Когда у сервера запрашивают XXX-YYY байтов какого-либо ресурса, но ресурс имеет меньший размер, чем указано в запросе.
Вернуться в начало

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

Когда этот код может использоваться? Все вполне и так понятно. Когда один из заголовков запроса, заголовок «Expect», имеет запрос, на который сервер не может предоставить ответ.
Вернуться в начало

Этот код был создан в 1998 году как одна из традиционных первоапрельских шуток IETF, в RFC 2324, Hyper Text Coffee Pot Control Protocol, и вряд ли будет обрабатываться современными HTTP-серверами.

Когда этот код может использоваться? Лет 15 назад, ради смеха.
Вернуться в начало

Запрос был принят и понят, но не может быть выполнен ввиду наличия семантических ошибок.

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

Целевой ресурс из запроса заблокирован от применения к нему указанного метода. Чтобы ресурс стал доступным, необходимо снять блокировку или предоставить правильные данные авторизации.

Когда этот код может использоваться? Когда ресурс… закрыт. Обычно это случается из соображений безопасности.
Вернуться в начало

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

Этот код отображается, когда ресурс определен в черновиках «WebDAV Advanced Collections Protocol», но не присутствует в «Web Distributed Authoring and Versioning Ordered Collections Protocol».
Вернуться в начало

Этот код отображается, когда сервер указывает клиенту на необходимость обновить (переключиться на другой, более новый) протокол. Когда этот код может использоваться? Обычно когда браузер использует устаревшие протоколы.
Вернуться в начало

  • 428 Precondition Required

Сервер-источник требует, чтобы в запросе были указаны предварительные условия. Этот код предназначен для того, чтобы избежать конфликта версий ресурса в тех случаях, когда клиент получает (GET) состояние ресурса, изменяет его, и отправляет (PUT) обратно на сервер, и в то же время какая-то третья сторона также изменяет положение ресурса прямо на севере, что приводит к конфликту.

Когда этот код может использоваться? Запрашивая указание условий, сервер как бы гарантирует клиентам то, что они используют корректные актуальные копии ресурс. Если же это не соответствует действительно, пользователь получит ошибку 428.
Вернуться в начало

Этот ответ посылается, если клиент попытался отправить слишком много запросов за короткое время.

Когда этот код может использоваться? Когда пользователь посылает слишком много запросов за короткий промежуток времени.
Вернуться в начало

  • 431 Request Header Fields Too Large

Происходит, когда сервер не собирается обрабатывать запрос, так как какое-то из полей заголовка (или все поля заголовков) слишком большое.

Когда этот код может использоваться? В основном тогда, когда заголовок запроса от пользователя больше, чем сервер способен обработать. Запрос может быть повторен после того, как будет уменьшен размер полей заголовков в запросе.
Вернуться в начало

Использовался в лог-файлах Nginx для указания того, что сервер не вернул информацию пользователю и закрыл соединение.

Когда этот код может использоваться? Обычно использовался в качестве сдерживающего фактора против вредоносного ПО.
Вернуться в начало

  • 449 Retry With (Microsoft)

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

Когда этот код может использоваться? Этот код зачастую генерируется, когда выставленные параметры запроса не соответствуют тем, что может принять сервер.
Вернуться в начало

  • 450 Blocked by Windows Parental Controls (Microsoft)

Расширение Microsoft. Эта ошибка выдается, когда параметры Windows Parental Controls выставлены на блокировку доступ к определенным веб-страницам.

Когда этот код может использоваться? Когда родители (зная об этой функции) используют родительский контроль, и id-доступа запросил доступ к заблокированному ресурсу.
Вернуться в начало

  • 451 Unavailable For Legal Reasons

Новый HTTP-код состояния для ресурсов, которые заблокированы из юридических соображений. Используется для указания на то, что доступ к запрашиваемому ресурсу был заблокирован из юридических соображений: например, цензурой, или правительством.
Вернуться в начало

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

Коды 5xx выделены под случаи неудачного выполнения операции по вине сервера.

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

  • 500 Internal Server Error

Данная ошибка говорит о любой внутренней ошибке сервера, которая не входит в рамки остальных ошибок класса.

Когда этот код может использоваться? Когда ресурс или ссылка создаются на сервере (вроде календаря в системе бронирования), которые технически не существуют в виде ссылки или доступного ресурса, но показывается пользователю в виде ссылки.
Вернуться в начало

Сервер либо не понимает метод в запросе, либо не поддерживает возможностей, необходимых для обработки запроса

Когда этот код может использоваться? Вы можете столкнуться с этим, когда сервер не поддерживает нормальные протоколы запроса, вроде GET, OPTIONS, HEAD, POST и т.д.
Вернуться в начало

Ответ 502 отображается, когда сервер, выступая в роли шлюза или прокси-сервера, получил недействительное ответное сообщение от вышестоящего сервера.

Когда этот код может использоваться? Обычно, когда вышестоящий сервер и прокси-сервер/шлюз не согласовывают между собой протоколы, представленные в запросе, и в результате получается ошибка при обмене данных.
Вернуться в начало

Сервер временно не имеет возможности обрабатывать запросы по техническим причинам. В основном, это состоянии является временным.

Когда этот код может использоваться? Когда сайт пользуется чрезмерным спросом, и сервер не в состоянии обработать все запросы.
Вернуться в начало

Сервер в роли шлюза или прокси-сервера не дождался ответа от вышестоящего сервера для завершения текущего запроса.

Когда этот код может использоваться? Когда для передачи данных используется прокси-сервер/шлюз, и два сервера ждут ответов.
Вернуться в начало

  • 505 HTTP Version Not Supported

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

Когда этот код может использоваться? В случаях, описанных выше! Когда HTTP-протокол более старый, нежели требуется серверу, и следовательно не поддерживается.
Вернуться в начало

  • 506 Variant Also Negotiates

Такой ответ посылается, когда в результате ошибочной конфигурации выбранный вариант указывает сам на себя, из-за чего процесс связывания прерывается.

Когда этот код может использоваться? Когда сервер настроен некорректно, и не способен обработать запрос.
Вернуться в начало

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

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

  • 509 Bandwidth Limit Exceeded

Этот код ответа используется при превышении веб-площадкой отведённого ей ограничения на потребление трафика.

Когда этот код может использоваться? Когда на сервере Apache выполняется корректное расширение, и в ISP установлен уровень пропускного канала, который скоро может быть превышен. Существует несколько опций предела.
Вернуться в начало

Когда на сервере отсутствует расширение, которое желает использовать клиент. Когда этот код может использоваться? Когда сервер требует больше информации в совершаемом запросе.
Вернуться в начало

  • 511 Network Authentication Required

Данный код состояния отображается в случае, если клиент должен сначала авторизоваться в сети, например, ввести пароль для платной точки доступа к Интернету.

Когда этот код может использоваться? Когда пользователь предварительно должен дать свое согласие на условия использования, перед тем, как он получит доступ к интернету (например, к Wi-fi точке доступа).

Итак, надеюсь, что данный список хоть как-то окажется вам полезным. Если я упустил что-то из виду,  пожалуйста, допишите информацию в комментариях, и я обязательно включу ее в статью. Пожалуйста, не забудьте поделиться этой статье с друзьями, чтобы они также были в курсе.
Вернуться в начало

Распространенные ошибки и коды состояния HTTP при тестировании веб-сайтов — TestMatick

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

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

Клиентами могут выступать:

  1. веб-браузеры;
  2. мобильное ПО;
  3. умная встроенная бытовая техника;
  4. разнообразные серверные приложения.

Сервер – виртуальная машина, которая имеет подключение к сети. Ее базовая задача – получение запросов, их обработка и отправка клиенту данных в определенном формате.

К серверам причисляют:

  1. Локальный веб-сервер;
  2. Любой сервер на основе HTTP;
  3. Специализированные наборы серверных машин.

Клиент с сервером обмениваются между собой сообщениями по типу «запрос-ответ». Их принято именовать сетевыми протоколами.

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

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

Виды кодов ответов

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

Выделяют 5 классов кодов по состоянию:

  • 1хх – группа информационных кодов. Их задача состоит в обработке информации, создании сообщения о том, что текущий запрос принят, и передаче данных.
  • 2хх – успешная обработка запроса. Запрос уже получен сервером и успешно выполнен без каких-либо ошибок.
  • 3хх – перенаправление (англ. redirect). Данный код сообщает о текущей необходимости отправить запрос по иному адресу при смене расположения нужного файла.
  • 4хх – ошибки на стороне пользователя. Такие ошибки могут указывать на то, что данный файл по запрашиваемому адресу не найден.
  • 5хх – ошибки на стороне сервера. При выполнении запроса случился сбой сервера.

Для того, чтобы узнать код состояния запроса в веб-браузере нужно открыть панель инструментов веб-разработчика. Значение кода будет доступно в столбце «Status» в специальной вкладке «Network». После того, как консоль будет открыта, нужно обновить страницу.

Коды ответа HTTP

Часто встречающиеся ошибки

Ошибка 400

«Неверный запрос» (Bad request) – неверно сформулированный запрос (допущенная синтаксическая ошибка в теле запроса). Пользовательский клиент может попробовать загрузить очень большой файл. Из-за этого запрос может быть сформирован некорректно, заголовки HTTP могут содержать ошибки и так далее.

Возможные причины:

  1. Работа веб-браузера блокируется антивирусом;
  2. Работа веб-браузера блокируется включенным брандмауэром Windows;
  3. Неверные конфигурации веб-браузера;
  4. Некачественное интернет-соединение.

Ошибка 403

«Доступ запрещен» (Forbidden) – текущий запрос не может быть обработанным из-за некоторых ограничений доступа к запрашиваемым данным.

Возможные причины:

  1. Некоторая ошибка внутри индекса файла;
  2. У сервера нет права доступа к нужной части информации;
  3. Группа файлов находится в неверно указанной директории.

Ошибка 404

«Файл не найден» (Not Found) – очень часто встречаемая ошибка в сети. Она указывает на то, что определенный файл по текущему адресу не может быть найден. Пользователям чаще всего встречается ошибка 404 при работе с так называемыми «битыми ссылками».

Возможные причины:

  1. Несуществующий URL;
  2. На текущем сервере полностью отсутствуют запрашиваемые файлы и конфигурации.

Ошибка 500

«Внутренняя ошибка сервера» (Internal Server Error) – может возникнуть непредвиденная пользователем ситуация на сервере, которая запросто классифицируется в другие известные коды сетевых ошибок.

Причины возникновения:

  1. Сценарий не запускается сервером;
  2. Скрипт содержит массу ошибок;
  3. Некорректный синтаксис файла .htaccess (вписана некорректная конструкция).

Ошибка 502

«Плохой шлюз» (Bad Gateway) – сервер получает ответ о наличии ошибки или полном отсутствии связи от следующего виртуального сервера, к которому он выполнил «сетевое обращение».

Возможные причины:

  1. Недостаточные возможности ресурсов сервера;
  2. Неверная работа прокси-сервера.

Ошибка 503

«Сервис временно недоступен» (Service Temporarily Unavailable) – текущая недоступность сервера, которая сопряжена с некоторыми техническими неурядицами.

Возможные причины:

  1. Сервер находится в перегруженном состоянии;
  2. Сервер в данный момент находится на техническом обслуживании.

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

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

API (англ. application programming interface) позволяют предоставить клиентам подобные данные. Процесс обмена данными и формат передачи информации четко структурирован, а значит, клиент и сервер точно знают, как им правильно взаимодействовать между собой.

На основе API  можно быстро находить и идентифицировать такие баги в ПО, как:

  1. Неверная работа данных;
  2. Дублирование или полное отсутствие функционала;
  3. Некоторые проблемы с безопасностью API;
  4. Некорректное функционирование системы веб-безопасности;
  5. Неверно структурированные ответы;
  6. Некоторые вопросы многопоточности.

В заключение

Не только специалистам из сферы ИТ важно понимать специфику и природу возникновения HTTP-ошибок. Коды в первую очередь связанны с особенностями функциональной работы ресурса и уведомляют клиента о текущем состоянии веб-страниц.

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

Дополнительно можно отметить, что подобная диагностика кодов ошибок (при тестировании безопасности) позволяет обнаружить некоторые слабые места в тестируемом программном обеспечении.

Коды ошибок http сервера — КОМТЕТ — хостинг

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

Во-первых сразу стоит обратить внимание, что не все коды веб-сервера имеют негативное значение (в зависимости от диапазона кода), а именно: есть коды, сообщающие о успешной обработке запроса, а есть ошибки, сообщающие о той или иной проблеме при обработке запроса:

  • 100-199 — означает что запрос получен и успешно обрабатывается;
  • 200-299 — запрос обработан успешно и сервер отправил запрашиваемый файл/документ;
  • 300-399 — запрос агента изменен и агенту нужно предпринять некоторые действия для удовлетворения измененного запроса;

Данные диапазоны являются информационно-предупреждающими, поэтому подробно мы их рассматривать не будем. Рассмотрим подробно следующие диапазоны ошибок:

  • ошибка 400 Bad Request

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

  • ошибка 401 Unauthorized

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

  • ошибка 402 Payment Required

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

  • ошибка 403 Forbidden

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

  • ошибка 404 Not Found

Документ по указанному URL не существует. Возможно, такой файл удален, а возможно, вы ошиблись при наборе URL в браузере или пошли по неверной ссылке.

  • ошибка 405 Method Not Allowed

Этот код выдается с заголовком Allow и показывает, что метод, используемый клиентом, для данного URL не поддерживается. Возможная причина: Вы пытаетесь отправить данные POST-форму на страницу, которая не является скриптом (например, на SHTML-страницу).

  • ошибка 406 Not Acceptable

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

  • ошибка 407 Proxy Authentication Required

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

  • ошибка 408 Request Time-out

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

  • ошибка 409 Conflict

Данный запрос конфликтует с другим запросом или с конфигурацией сервера.

Данный код показывает, что затребованный 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

При обработке запроса на сервере один из его компонентов выдал аварийный отказ (Alert) или столкнулся с ошибкой конфигурации. Причиной этого могут быть неправильные инструкции в файле  .htaccess, неправильные атрибуты на CGI-скрипте, ошибка в скрипте. Точную причину можно установить, просматривая 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 не поддерживается данным сервером.

 

Реестр кодов состояния протокола передачи гипертекста (HTTP)

100 Продолжить [RFC7231, раздел 6.2.1]
101 Протоколы коммутации [RFC7231, раздел 6.2.2]
102 Обработка [RFC2518]
103 Ранние подсказки [RFC8297]
104-199 Не назначено
200 ОК [RFC7231, раздел 6.3.1]
201 Создано [RFC7231, раздел 6.3.2]
202 Принято [RFC7231, раздел 6.3.3]
203 Неавторизованная информация [RFC7231, раздел 6.3.4]
204 Нет содержимого [RFC7231, раздел 6.3.5]
205 Сбросить содержимое [RFC7231, раздел 6.3.6]
206 Частичное содержимое [RFC7233, раздел 4.1]
207 Мульти-статус [RFC4918]
208 Уже сообщено [RFC5842]
209-225 Не назначено
226 IM Б / У [RFC3229]
227-299 Не назначено
300 Несколько вариантов выбора [RFC7231, раздел 6.4.1]
301 Постоянно перемещен [RFC7231, раздел 6.4.2]
302 Найдено [RFC7231, раздел 6.4.3]
303 См. Другие [RFC7231, раздел 6.4.4]
304 Без изменений [RFC7232, раздел 4.1]
305 Использовать прокси [RFC7231, раздел 6.4.5]
306 (Не используется) [RFC7231, раздел 6.4.6]
307 Временное перенаправление [RFC7231, раздел 6.4.7]
308 Постоянное перенаправление [RFC7538]
309-399 Не назначено
400 Неверный запрос [RFC7231, раздел 6.5.1]
401 Неавторизованный [RFC7235, раздел 3.1]
402 Требуется оплата [RFC7231, раздел 6.5.2]
403 Запрещено [RFC7231, раздел 6.5.3]
404 Не найдено [RFC7231, раздел 6.5.4]
405 Метод запрещен [RFC7231, раздел 6.5.5]
406 Неприемлемо [RFC7231, раздел 6.5.6]
407 Требуется аутентификация прокси [RFC7235, раздел 3.2]
408 Тайм-аут запроса [RFC7231, раздел 6.5,7]
409 Конфликт [RFC7231, раздел 6.5.8]
410 ушел [RFC7231, раздел 6.5.9]
411 Требуемая длина [RFC7231, раздел 6.5.10]
412 Ошибка предварительного условия [RFC7232, раздел 4.2] [RFC8144, раздел 3.2]
413 Слишком большая полезная нагрузка [RFC7231, раздел 6.5.11]
414 URI слишком длинный [RFC7231, раздел 6.5.12]
415 Неподдерживаемый тип носителя [RFC7231, раздел 6.5.13] [RFC7694, раздел 3]
416 Диапазон не соответствует требованиям [RFC7233, раздел 4.4]
417 Ожидание не выполнено [RFC7231, раздел 6.5.14]
418-420 Не назначено
421 Неправильный запрос [RFC7540, раздел 9.1.2]
422 Необработанная сущность [RFC4918]
423 Заблокировано [RFC4918]
424 Неудачная зависимость [RFC4918]
425 Слишком рано [RFC8470]
426 Требуется обновление [RFC7231, раздел 6.5.15]
427 Не назначено
428 Требуется предварительное условие [RFC6585]
429 Слишком много запросов [RFC6585]
430 Не назначено
431 Слишком большие поля заголовка запроса [RFC6585]
432-450 Не назначено
451 Недоступно по юридическим причинам [RFC7725]
452-499 Не назначено
500 Внутренняя ошибка сервера [RFC7231, раздел 6.6.1]
501 Не реализовано [RFC7231, раздел 6.6.2]
502 Плохой шлюз [RFC7231, раздел 6.6.3]
503 Служба недоступна [RFC7231, раздел 6.6.4]
504 Тайм-аут шлюза [RFC7231, раздел 6.6.5]
505 Версия HTTP не поддерживается [RFC7231, раздел 6.6.6]
506 Вариант также обсуждает [RFC2295]
507 Недостаточно памяти [RFC4918]
508 Обнаружена петля [RFC5842]
509 Не назначено
510 Не расширенный [RFC2774]
511 Требуется сетевая аутентификация [RFC6585]
512-599 Не назначено

Список кодов состояния HTTP | Объяснение кодов ошибок HTTP

Каждый раз, когда задача запускается на отслеживаемом устройстве, целевой сервер возвращает коды состояния HTTP, чтобы указать состояние ответа от сервера.

Эти коды состояния HTTP или коды сетевых ошибок будут отображаться в результатах сеанса мониторинга, а также в уведомлениях о предупреждениях. Эти коды состояния поддерживаются Управлением по присвоению номеров в Интернете (IANA), и самый последний список кодов можно найти здесь.

Используя фильтры, вы можете удалять результаты с определенными кодами состояния из ваших задач, предупреждений и отчетов. Нажмите на справочные документы RFC в списке ниже, чтобы получить полную информацию о кодах состояния.

Wh a t это протокол HTTP ?

Каждый раз, когда пользователь посещает веб-сайт, он отправляет запрос от своего браузера / клиента серверу, который отвечает запрошенными ресурсами.Все эти запросы соответствуют стандарту HTTP (протокол передачи гипертекста). Протокол HTTP, который технически является частью прикладного уровня в пакете Интернет-протоколов, является всего лишь одним из многих протоколов в пакете IP. Протокол HTTP — это основа Интернета, используемая для связи и передачи данных между клиентами и серверами. Некоторые из других наиболее распространенных интернет-протоколов, с которыми вы часто сталкивались, включают следующие:

Уровень приложения Протоколы

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

  • DNS : Протокол DNS (система доменных имен) преобразует доменные имена в удобочитаемые IP-адреса для браузера, чтобы можно было загружать ресурсы.
  • FTP : Протокол FTP (протокол передачи файлов) используется для передачи файлов между браузером и сервером в компьютерной сети.
  • SMTP : протокол SMTP (Simple Mail Transfer Protocol) используется для отправки и получения электронных писем между отправителями и получателями в сети.
  • TLS / SSL : Протокол SSL (Secure Sockets Layer) был официально объявлен устаревшим в 2015 году. Вместо него был введен TLS (Transport Layer Security), чтобы обеспечить безопасный способ связи по сети.
  • IMAP : протокол IMAP (протокол доступа к сообщениям в Интернете) используется для управления и получения сообщений с сервера электронной почты.В отличие от SMTP, вы не можете использовать протокол IMAP для отправки сообщений электронной почты.
  • POP : протокол POP (Post Office Protocol) похож на IMAP, но разница в том, что протокол POP позволяет пользователю получать сообщения с почтового сервера, но затем сообщение удаляется с почтового сервера. Протокол IMAP может синхронизировать сообщения на нескольких устройствах. Это действительно зависит от того, как вы хотите, чтобы пользователи получали доступ к своей электронной почте.
  • SIP : Протокол SIP (Session Initiation Protocol) — это протокол сигнализации, который используется в приложениях для передачи голоса, видео и сообщений в реальном времени.SIP — это протокол, который используется для включения и развертывания услуг VoIP (Voice Over Internet Protocol). SIP также используется вместе с другими протоколами, такими как SDP (протокол описания сеанса), UDP, TCP и TLS для передачи данных сеанса и мультимедиа.

Транспортный уровень Протоколы

Транспортный уровень обрабатывает передачу данных, включая протоколы TCP и UDP, и обеспечивает правильную и своевременную отправку и получение данных.

  • TCP : Протокол TCP (протокол управления транспортом) используется для обеспечения безопасности передачи данных между клиентом и сервером, а также для того, чтобы весь обмен данными был обработан. Например, когда сервер отправляет обратно файл по запросу клиента, уровень HTTP будет связываться с транспортным уровнем, чтобы настроить и отправить запрошенный файл. Протокол TCP управляет процессом сборки и отправки (а иногда и повторной отправки, если необходимо) пакетов данных и гарантирует, что все пакеты были отправлены и доставлены.
  • UDP : Протокол UDP (User Datagram Protocol) позволяет приложениям отправлять сообщения, называемые дейтаграммами, на другие узлы в сети.

Уровень Интернета Протоколы

Уровень Интернета, также называемый сетевым уровнем, отвечает за отправку и повторную сборку сетевых пакетов наиболее эффективным способом с использованием сетевых адресов / IP-адресов для отправки пакетов по назначению.

  • IP : Протокол IP (Интернет-протокол), наряду с протоколом TCP, представляет собой набор требований, определяющих способ передачи данных через Интернет.
  • ICMP : протокол ICMP (Internet Control Message Protocol) — это сетевой протокол, который позволяет сетевым устройствам, например маршрутизаторам, диагностировать проблемы связи. Протокол ICMP не связан с обменом данными, скорее его цель — убедиться, что данные достигают предполагаемого места назначения.

Канальный уровень Протоколы

Канальный уровень — это группа методов связи, которые управляют передачей данных между физическими устройствами и сетью.

  • ARP : Протокол / процедура ARP (протокол разрешения адресов) для сопоставления сетевых IP-адресов с адресом физического аппаратного устройства, также известным как MAC-адрес.
  • MAC : протокол MAC (Medium Access Control) дает аппаратным устройствам уникальный идентификационный номер. Он позволяет сетям подключаться к устройствам и взаимодействовать с ними.
  • Wi-Fi : Протокол Wi-Fi (Wireless Fidelity), который является одним из протоколов, которые все мы используем в повседневной жизни, представляет собой группу протоколов беспроводной сети, которая используется для подключения к Интернету и LAN (локальные сети).

Что такое коды состояния и почему они важны?

Существуют даже расширения протокола HTTP, в том числе HTTPS (безопасный протокол передачи гипертекста) и WebDAV (распределенная разработка и управление версиями через Интернет), которые мы обсудим подробнее в кодах состояния HTTP ниже. Когда клиент делает запрос к серверу, коды состояния сообщают вам, был ли запрос успешным, неудачным или другим. Коды состояния поддерживаются организацией Internet Assigned Numbers Authority, или IANA, и включают коды состояния, полученные от Целевой группы по проектированию Интернета (IETF) и Internet Society (ISOC).Согласно определению организации IANA, существует пять классификаций кодов состояния HTTP:

1xx : информационный — запрос получен, процесс продолжается
2xx : успех — действие было успешно получено, понято и принято
3xx : перенаправление — для выполнения запроса необходимо предпринять дальнейшие действия
4xx : ошибка клиента — запрос содержит неверный синтаксис или не может быть выполнен
5xx : ошибка сервера — серверу не удалось выполнить явно действительный запрос

Специалисты и инженеры регулярно предлагают новые коды статуса в запросах комментариев (RFC), а IETF будет рассматривать, принимать и удалять коды статуса по мере необходимости.

Пояснение кодов состояния HTTP

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

Первая цифра кода состояния идентифицирует класс; однако вторые две цифры не играют никакой роли в дальнейшем определении кода состояния для конкретного типа сообщения / ответа.В этих классификационных группах может быть несколько кодов состояния, и некоторые группы имеют больше кодов состояния, чем другие. И хотя официально существует более 60 уникальных кодов статуса, большинство людей регулярно сталкиваются с несколькими или двумя с течением времени.

Большинство этих кодов состояния интерпретируются и обрабатываются «за кулисами». Вы также увидите, что есть группы кодов, которые помечены как «Неназначенные». Хотя большинство кодов состояния, которые мы видим сегодня, были стандартизированы и не менялись с течением времени, эти неназначенные номера оставляют место для создания дополнительных кодов состояния по мере необходимости.Кроме того, хотя некоторые из неназначенных пользовательских кодов ранее не входили в стандарт HTTP (протокол передачи гипертекста), есть компании, которые используют их в качестве настраиваемого ответа сервера для пользователей, что позволяет компаниям лучше устранять проблемы, с которыми могут столкнуться пользователи. Щелкните ссылки на справочный документ RFC в списке ниже, чтобы получить полную информацию о конкретном коде состояния HTTP.

Полный список и обзор кодов состояния HTTP

1 xx Код состояния s : Информационный

Коды состояния HTTP уровня 1xx сообщают пользователям, что сделанный ими запрос был получен, но все еще обрабатывается.Коды состояния 1xx не обязательно означают, что есть проблема, они просто позволяют вам что-то еще в процессе завершения. В эту группу включены лишь несколько кодов 1xx, с которыми пользователи могут столкнуться и о которых необходимо знать.

100 : Продолжить

Код состояния 100 Продолжить означает, что часть запроса была получена без проблем. На данный момент все в порядке, но процесс еще не завершен. Если оставшаяся часть запроса не будет отклонена, сервер отправит окончательный ответ после того, как запрос будет завершен.Если заголовки HTTP были отклонены, это гарантирует, что клиент не отправит запрос тела. Однако, если запрос не содержит поля заголовка, браузер просто проигнорирует ответ. См. RFC7231, раздел 6.2.1 для получения дополнительной информации.

101: протоколы переключения

Со времен зарождения Интернета было создано множество протоколов HTTP. Первой документированной версией протокола HTTP был HTTP 0.9. Текущая итерация — HTTP 2.0 или HTTP / 2. Код состояния 101 Switching Protocols указывает, что сервер принимает запрос от клиента на переключение на другой протокол HTTP через поле заголовка Upgrade. Когда браузер делает запрос страницы, он может получить код состояния HTTP 101, а затем заголовок Upgrade, который указывает, что сервер переключается на другую версию HTTP. Наконец, предполагается, что сервер соглашается переключать протоколы только тогда, когда это выгодно, например, при обновлении / переключении на новый протокол по сравнению со старым.См. RFC7231, раздел 6.2.2 для получения дополнительной информации.

102: Обработка

Код состояния 102 «Обработка» используется только с WebDAV (Web Distributed Authoring and Versioning). Большинство страниц предназначены только для чтения. WebDAV — это расширение протокола HTTP, которое дает клиентам возможность удаленно редактировать контент и передавать файлы. Протокол WebDAV был создан, чтобы дать пользователям возможность совместно работать над файлами с другими пользователями, такими как Dropbox или Google Drive. Код состояния 102 — это промежуточный код ответа, сообщающий клиенту, что сервер принял полный запрос, но не завершил его.Этот код состояния HTTP отправляется сервером только в том случае, если запрос занимает более 20 секунд. См. RFC2518, раздел 10.2 для получения дополнительной информации.

103: Ранние подсказки

Коды состояния 103 Early Hints в настоящее время находится на стадии оценки / экспериментов. Этот код состояния будет использоваться при предварительной загрузке внешнего контента / ресурсов. Протокол HTTP / 2 позволяет отправлять контент для ускорения доставки, поэтому веб-разработчики могут отправлять определенный контент, ожидая загрузки других внешних ресурсов.Это выгодно с точки зрения конечного пользователя, поскольку сводит к минимуму воспринимаемое время загрузки. Этот код ответа HTTP будет указывать браузеру, что сервер собирается отправить окончательный ответ вместе с полями заголовка, включенными в ответ. См. RFC8297, раздел 2 для получения дополнительной информации

104-199: не назначен

Коды состояния с 104 по 199 в настоящее время не назначены.

2xx Код состояния: Успешно

Коды состояния HTTP уровня 2xx показывают, что запрос клиента от сервера был успешно получен и обработан.В отличие от кодов состояния 4xx, коды состояния 2xx — это то, что вы хотите получить. Как и коды состояния 1xx, коды состояния 2xx обрабатываются за кулисами и редко видны пользователям, если только они не используют инструменты разработчика или SEO для просмотра всех HTTP-ответов страницы.

200: ОК

Один из наиболее широко используемых кодов состояния HTTP, код состояния 200 OK используется для обозначения того, что запрос был получен, обработан и был успешным. Однако в зависимости от используемого метода запроса (GET, HEAD, POST, PUT, DELETE, OPTIONS, TRACE).Например, если запрос является запросом GET, ответ будет включать ресурс. Если это любой из других запросов, ответ будет включать результат действий. Код состояния 200 — это один из более чем 10 других кодов ответа, которые также кэшируются, что означает, что он может быть сохранен и получен через клиент, чтобы не приходилось делать еще один запрос к серверу в будущем. См. RFC7231, раздел 6.3.1 для получения дополнительной информации.

201: создано

Код состояния 201 Created подобен коду состояния 200 OK, однако код состояния 201 означает, что запрос был успешно обработан, и он вернул или создал ресурс или ресурсы в процессе.Код состояния 201 обычно используется для запросов PUT. Например, когда используется запрос PUT, новый ресурс создается по URL-адресу, указанному в запросе. Если в запросе POST есть код состояния 201, это означает, что ресурс был создан в другой конечной точке / местоположении API. См. RFC7231, раздел 6.3.2 для получения дополнительной информации.

202: принято

Код состояния 202 Accepted означает, что сервер получил запрос на обработку, и он принят, но запрос не был завершен.Это также не означает, что запрос в конечном итоге будет принят, поскольку это будет зависеть от того, когда произойдет фактическая обработка. Этот тип запроса обычно встречается в API, где пакетный процесс выполняется один раз в день. Поскольку HTTP не может связываться после успешного выполнения запроса или закрытия соединения пользователя, API может отправить пользователю электронное письмо с уведомлением об успешном завершении процесса. См. RFC7231, раздел 6.3.3 для получения дополнительной информации.

203: неавторизованная информация

Код состояния 203 Неавторизованная информация обычно используется прокси-сервером HTTP или третьей стороной.Прокси-сервер, находящийся между клиентом и сервером, может изменять ответы до того, как достигнет клиента. Чтобы указать, что что-то было изменено во время процесса, используется код состояния 203. Однако недостатком этого метода является то, что невозможно узнать, каким был исходный код состояния, если прокси-сервер что-то изменил в ответе. Предлагаемый обходной путь — использовать заголовок предупреждения вместе с кодом состояния 214, который используется, чтобы указать, что в ответе было изменение или модификация.Использование заголовка предупреждения позволяет передать исходный код состояния. См. RFC7231, раздел 6.3.4 для получения дополнительной информации.

204: нет содержимого

Код состояния 204 Нет содержимого указывает на то, что ответ был успешно доставлен сервером и выполнен, и в теле ответа больше не должно отправляться содержимое. Например, если запрос отправляется в форме на странице, после отправки ответа клиент / браузер не должен изменять представление, то есть форма не должна обновляться или направлять пользователей на новую страницу.Никакой дополнительный контент не должен заменяться или отображаться с точки зрения пользователя. См. RFC7231, раздел 6.3.5 для получения дополнительной информации.

205: сбросить содержимое

Как и код состояния 204 Нет содержимого, код состояния 205 Сброс содержимого указывает, что сервер успешно отправил запрос и требует, чтобы пользовательский агент обновил / сбросил представление в исходное состояние. Если мы используем пример формы на странице, после того, как пользователь заполнит и отправит форму, клиент / браузер должен вернуть форму в исходное состояние, чтобы пользователь мог предпринять дальнейшие действия.Код состояния 205 предполагает, что дополнительный контент не будет предоставляться. См. RFC7231, раздел 6.3.6 для получения дополнительной информации.

206: Частично Содержимое

Код состояния частичного содержимого 206 может использоваться для множества запросов и обычно указывает, что сервер выполнил частичный запрос ресурса. Например, если клиент ищет только определенную часть или диапазон определенного ресурса или страницы. Другой пример использования кода состояния 206 — это видео.Клиент может загружать видео только по частям, чтобы не ждать, пока видео буферизируется или загружается, что помогает избежать негативного взаимодействия с пользователем, когда пользователю придется ждать дольше, прежде чем воспроизведение видео. Это нормальная передовая практика среди видеопроигрывателей HTTP, позволяющая избежать проблем с пропускной способностью и предполагаемой задержкой. См. RFC7233, раздел 4.1 для получения дополнительной информации.

207: мульти-статус

Код состояния 207 Multi-Status предоставляет статус для нескольких независимых процессов и используется серверами WebDAV.Сообщение / ответ по умолчанию — это текстовое сообщение / сообщение XML. Это указывает на то, что было выполнено несколько операций и что статус каждой операции можно просмотреть в теле ответа. Коды состояния могут варьироваться в зависимости от одной из пяти категорий. Коды ответов будут различаться в зависимости от количества подзапросов. В отличие от других 200 кодов состояния, код состояния 207 не подтверждает, что процесс был успешным. Клиенту необходимо просмотреть тело каждого запроса, чтобы определить, был ли он успешным.См. RFC4918, раздел 11.1 для получения дополнительной информации.

208: Отчет уже представлен

Код состояния 208 уже сообщен — это еще один код состояния, используемый в расширении WebDAV. Как и код состояния 207, он позволяет клиенту / браузеру указать серверу, что ресурс уже был обработан. Когда клиент запрашивает ресурсы, вполне возможно, что ответ будет включать повторяющиеся ресурсы, что будет означать, что одни и те же ресурсы будут отправлены несколько раз, что является избыточным.Ответ статуса 208 исключает возможность обработки и повторения одного и того же ответа. Ответы с кодом состояния 208 будут отображаться только в теле ответа и никогда не будут являться фактическим ответом HTTP. См. RFC5842, раздел 7.1 для получения дополнительной информации.

209-225: не назначен

Коды состояния с 209 по 225 в настоящее время не назначены.

226: IM Б / у

A 226 IM (Манипуляции с экземпляром) Используемый код состояния используется, чтобы указать, что сервер выполнил запрос GET для ресурса, но ответ представляет собой представление одной или нескольких манипуляций с экземпляром, которые были применены к текущему экземпляру.В протоколе HTTP есть расширение, называемое дельта-кодированием в HTTP, которое поддерживается на стороне сервера. Если это реализовано, клиент может запросить изменения кэшированной версии, и сервер отправит изменения вместо повторной отправки всего ресурса снова. Чтобы реализовать эту функцию, в запросе клиента / браузера необходимо указать, какой тип IM поддерживается. Если сервер также поддерживает эту функцию, он ответит кодом состояния 226 и изменениями. Если возвращается код состояния 200, это означает, что функция не поддерживается.См. RFC3229, раздел 10.4.1 для получения дополнительной информации.

227-299: не назначен

Коды состояния с 227 по 299 в настоящее время не назначены.

3xx: перенаправление

Коды состояния 3xx используются в случаях перенаправления URL. Веб-сайты постоянно меняются и развиваются, поэтому иногда маркетологам нужно направлять пользователей на обновленную или другую страницу. Перенаправления помогают избавить пользователей от необходимости искать то, что они ищут, и поддерживать ваш рейтинг в поисковых системах.Действия перенаправления могут выполняться браузером автоматически или могут потребовать дополнительного взаимодействия со стороны пользователей. Коды состояния HTTP 3xx жизненно важны для SEO (поисковой оптимизации) и взаимодействия с пользователем, а также сообщают поисковым системам, какой контент вы хотите, чтобы они сканировали и индексировали. При неправильной реализации пользователи могут быть направлены в непредусмотренное место, что может привести к появлению кода состояния 4xx и повлиять на показатели качества SEO.

300: множественный выбор

Код состояния «300 множественных вариантов» указывает, что ресурс перемещен и может перенаправить в несколько местоположений.В этом случае пользователь должен решить, какой ресурс использовать. Сервер может указать предпочтительный вариант, и это должно быть указано в поле заголовка, где пользовательский агент может автоматически перенаправить на предпочтительный вариант. На практике этот код состояния используется редко, поскольку не существует стандартизированного способа выбора из нескольких ответов. См. RFC7231, раздел 6.4.1 для получения дополнительной информации.

301: перемещен навсегда

Код состояния 301 перемещен навсегда используется, чтобы указать, что целевой ресурс был перемещен в постоянное местоположение.Код состояния 301 сообщает браузеру / клиенту использовать это новое местоположение или URL-адрес в заголовке. Наряду с кодом состояния 301 в ответе будет указан новый URL-адрес, а также будут обновлены все URL-адреса в предыдущем местоположении (ах) вместе с обновлением до нового URL-адреса. См. RFC7231, раздел 6.4.2 для получения дополнительной информации.

302: найдено

Код состояния 302 Found указывает клиенту / браузеру, что ресурс, к которому они обращаются, временно расположен в другом месте.В отличие от кода состояния 301, код состояния 302 указывает на временное перемещение, поэтому клиент не должен автоматически обновлять свои ссылки на новое местоположение, поскольку, опять же, это должно быть временным. Пример того, где должен использоваться код состояния 302, если существует несколько URL-адресов, но они могут обслуживаться на разных языках. Пользователь может перейти по определенному URL-адресу, но клиент может автоматически перенаправить его на нужную страницу в соответствии с настройками своего браузера и использовать его при последующих посещениях. Следует отметить, что в некоторых случаях браузеры могут изменить запрос с POST на GET.В случае, если это действие неблагоприятно, следует использовать код состояния 307. См. RFC7231, раздел 6.4.3 для получения дополнительной информации.

303: См. Другие

Код состояния 303 См. Другое указывает, что сервер будет перенаправлять клиента / браузер на другой ресурс. Ресурс будет указан как URL-адрес в поле заголовка. В отличие от кодов состояния 301 и 302, это не означает, что ресурс временно или постоянно перемещается, его цель — указать URL-адрес, по которому можно найти ответ на конкретный запрос с помощью запроса GET.Коды состояния 303 не следует кэшировать, однако ответ на последующий запрос может кэшироваться. Типичное использование кода состояния 303 — гарантировать, что пользователи случайно не отправят данные формы повторно через запрос POST. Их следует направить на новую страницу. В противном случае они могут неосознанно щелкнуть кнопку «Назад» в своем браузере, что может потребовать от них повторной отправки, что приведет к ненужным дублированным отправкам. См. RFC7231, раздел 6.4.4 для получения дополнительной информации.

304: без изменений

Код состояния 304 Not Modified отправляется в ответ на условный запрос GET или HEAD.Клиенты / браузеры могут отправлять условный запрос, например If-Match , If-None-Match , If-Modified-Since , If-Unmodified-Since или If-Range , спрашивая, если конкретный ресурс был изменен с определенной даты / времени. Это делается только в том случае, если клиент ранее получил доступ, загрузил и сохранил ресурс. Если он был изменен с момента последнего доступа к этой конкретной дате / времени, сервер вернет код состояния 200 OK. Если он не был изменен с этой даты / времени, в качестве ответа отправляется код состояния 304, указывающий, что сохраненный ресурс должен обслуживаться, поскольку он не был изменен с момента последнего обращения к нему.См. RFC7232, раздел 4.1 для получения дополнительной информации.

305: использовать прокси

Код состояния 305 Use Proxy — это устаревший код состояния, который больше не используется из соображений безопасности. Он использовался, чтобы указать клиенту, что доступ к ресурсу, к которому он обращается, должен осуществляться через прокси. Дополнительные сведения о коде состояния 305 Use Proxy см. В RFC7231, раздел 6.4.5

.

306: Не используется

Как и код состояния 305, состояние 306 Не используется изначально называлось Switch Proxy.Код состояния 306 использовался в предыдущей спецификации. Его намерение должно было использоваться как указание клиенту, что последующие запросы к ресурсу должны использовать указанный прокси. Это было сочтено проблемой безопасности, поэтому больше не используется. Для получения дополнительной информации о коде состояния 306 Unused, см. RFC7231, раздел 6.4.6

.

307: временное перенаправление

Как и код статуса перенаправления 302 Found, код статуса 307 Temporary Redirect указывает клиенту / браузеру, что ресурс или документ доступен по другому временному URL-адресу, и возвращает этот URL-адрес.Поскольку перенаправление является временным и может измениться, браузер / клиент должен продолжать обращаться к текущему URL-адресу для последующих запросов. Основное различие между кодом состояния 302 и кодом состояния 307 заключается в том, что код состояния 307 не позволяет изменять запросы из запроса POST на запрос GET, поэтому, если клиент запросил запрос POST, он будет перенаправлен и снова инициирует запрос POST . См. RFC7231, раздел 6.4.7

308: постоянное перенаправление

Код состояния постоянного перенаправления 308 — это кэшируемый код состояния (если не реализованы элементы управления кешем), который указывает, что целевой ресурс теперь расположен по постоянному URL-адресу, и последующие запросы также должны быть направлены на этот URL.Кроме того, клиент должен обновить все старые закладки на новое место. Код состояния 308 очень похож на код состояния 301, однако, если отправляется код состояния 308, клиент должен инициировать и отправить тот же запрос в целевое местоположение. Код состояния 301 не обязателен. Большинство браузеров / клиентов изменяют запрос POST на запрос GET. См. RFC7238, раздел 3 для получения дополнительной информации.

309-399: не назначен

Коды состояния с 309 по 399 в настоящее время не назначены.

4xx: ошибка клиента

Классификация с наибольшим количеством кодов состояния HTTP, коды состояния HTTP 4xx — это не то, что вы хотите, чтобы ваши пользователи видели. Любой код состояния, начинающийся с 4, означает наличие проблемы с клиентом. Коды состояния 4xx обычно генерируются, если страница была удалена и не перенаправлена, или если что-то неправильно введено в URL-адрес или ссылку. Если пользователи получают ужасный код состояния 4xx, это означает, что существует проблема с клиентом / браузером, получающим информацию с сервера.Это ошибки, которые пользователи увидят всплывающими на экране и создадут негативное впечатление для пользователей, приведя к небольшому разочарованию и поискам чего-то другого. Если поисковые системы сканируют ваш сайт и получают, например, ошибку 404, это будет отображаться как ошибка в отчете. Несколько ошибок 404 — это нормально, и поисковые системы не обязательно считают их негативными, но ошибка 404, которая перенаправляет на 404, может негативно повлиять на ваше SEO. Мало того, если рассматриваемая страница используется для увеличения трафика или продаж, это может привести к потере потенциального дохода.

400: неверный запрос

Код состояния ошибки 400 Bad Request означает, что сервер не может обработать запрос из-за проблемы со стороны клиента. Это может быть связано с любым количеством причин, таких как слишком большой файл, неправильный синтаксис, недопустимый URL-адрес или другая проблема, вызванная сторонним приложением, поэтому код состояния 400 иногда используется в качестве уловки. весь код состояния, даже если есть проблема на стороне сервера. Это может сделать устранение неполадок кода состояния 400 немного более трудоемким и трудным, однако, наряду с ошибкой кода состояния 400 и информацией заголовка, сервер может предоставить дополнительный ответ вместе с ним, который может быть отображен для пользователя, чтобы помочь идентифицировать проблема и облегчить процесс поиска и устранения неисправностей и диагностики ошибки.См. RFC7231, раздел 6.5.1 для получения дополнительной информации.

401: неавторизованный

Код состояния ошибки 401 Unauthorized указывает, что запрос не включает соответствующие учетные данные аутентификации, аутентификация не удалась или пользователь должен войти в систему. Клиент требует аутентификации от сервера. Термины авторизованный и аутентифицированный часто используются как синонимы, но они означают разные вещи. Код состояния 401 строго связан с аутентификацией.В тех случаях, когда вы хотите сообщить клиенту, что он вообще не разрешен, следует использовать код состояния 403. Согласно спецификации, код состояния 401 должен также включать заголовок WWW-Authenticate из ответа сервера, указывающий клиенту, какую схему или метод аутентификации требует сервер. См. RFC7235, раздел 3.1 для получения дополнительной информации.

402: Требуется оплата

Первоначально созданный как часть возможности использования потенциальных будущих цифровых способов оплаты, код состояния ошибки 402 Payment Required официально зарезервирован для использования в будущем, но он использовался в некоторых ограниченных, но редких ситуациях.Для получения дополнительной информации о коде ошибки 402 Payment Required, см. RFC7231, раздел 6.5.2

.

403: Запрещено

Код состояния ошибки 403 Forbidden указывает, что запрос от клиента был понят, но сервер не авторизует его, поэтому клиент не может получить к нему доступ. Сервер может указать причину, по которой он не авторизует запрос в ответе, что может быть связано с различными причинами, такими как неправильный пароль или имя пользователя. В отличие от кода состояния 401, который требует аутентификации, код состояния 403 может указывать на то, что у клиента действительно нет авторизации для доступа к этим ресурсам, поэтому аутентификация в этом случае невозможна.См. RFC7231, раздел 6.5.3 для получения дополнительной информации.

404: не найдено

Один из наиболее распространенных и печально известных кодов состояния, с которыми сталкиваются пользователи и разработчики, код состояния ошибки 404 Not Found указывает, что ресурс, требуемый от сервера, не существует или не желает предоставлять его клиенту. Код состояния 404 не будет указывать, является ли отсутствие предоставления ресурса временным или постоянным, но клиент может делать последующие запросы для доступа к нему.В случаях, когда известно, что ресурсы навсегда исчезли, следует использовать код состояния 410. Коды состояния 404 по умолчанию также кэшируются, если не установлены другие элементы управления кешем. См. RFC7231, раздел 6.5.4 для получения дополнительной информации.

405: Метод запрещен

Код состояния ошибки 405 Method Not Allowed указывает, что определенный ресурс, запрошенный клиентом, не поддерживается сервером. Запрещенный метод 405 похож на код состояния 403 Forbidden, однако код состояния 403 указывает, что ресурс может быть доступен, просто у клиента нет необходимой авторизации для выполнения запроса.Наряду со статусом 405 Method Not Allowed, сервер должен указать соответствующие и поддерживаемые методы для целевого ресурса. Для получения дополнительной информации о коде ошибки 405 Method Not Allowed см. RFC7231, раздел 6.5.5

406: неприемлемо

Подобно коду состояния ошибки 405 «Метод не разрешен», код ошибки 406 неприемлемо указывает на отсутствие поддержки для конкретного запроса. В этом случае код состояния 406 Not Acceptable указывает, что сервер понял запрос, но ответ не поддерживается или не понимается клиентом.Клиент может запросить определенные версии ресурса в заголовке, например A-IM или Accept Language, среди прочего, но если сервер не поддерживает его, он отвечает кодом состояния 406 Not Acceptable. Сервер может ответить либо списком подходящих идентификаторов ресурсов, из которых может выбрать клиент. См. RFC7231, раздел 6.5.6 для получения дополнительной информации.

407: требуется проверка подлинности прокси-сервера

Код состояния ошибки 407 Proxy Authentication Required похож на код состояния 401 Unauthorized, однако в случае кода состояния 407, чтобы использовать прокси, клиент должен сначала пройти аутентификацию.Прокси-сервер должен возвращать метод аутентификации. Сегодня это не так распространено из-за роста числа VPN, прокси-серверы действуют как посредники между пользователями / клиентами и Интернетом, позволяя пользователям быстрее получать доступ к ресурсам, поскольку контент обычно кэшируется, а также могут обеспечивать уровень безопасности и анонимности для пользователей. Для получения дополнительной информации о коде ошибки 407 Proxy Authentication Required, см. RFC7235, раздел 3.2

408: Тайм-аут запроса

Код состояния ошибки тайм-аута запроса 408 означает, что сервер не получил запрос от клиента в течение указанного периода времени.Отложенный запрос от клиента может быть вызван множеством причин, например медленным или прерванным соединением. По истечении этого времени сервер отправляет статус 408 Request Timeout, и пользователь / клиент может повторно отправить запрос. Для получения дополнительной информации о коде ошибки 408 Request Timeout см. RFC7231, раздел 6.5.7

.

409: Конфликт

Код состояния ошибки конфликта 409 указывает на то, что запрос от клиента не может быть обработан из-за конфликта с сервером.Запрос от клиента прошел нормально, но на стороне сервера возникли проблемы, препятствующие выполнению запроса. Примером этого может быть запрос пользователя на редактирование, удаление или создание определенного файла, но эти функции не разрешены. Вместе с ответом 409 сервер должен вернуть инструкции о том, как пользователь может решить эту проблему, или указать, почему проблема возникает. См. RFC7231, раздел 6.5.8 для получения дополнительной информации.

410: ушел

Как и код состояния ошибки 404 Not Found, который мы рассмотрели ранее, код состояния 410 Gone указывает, что ресурс, запрашиваемый клиентом, был удален и больше не доступен с сервера.Никакой дополнительной информации о перенаправлении URL-адресов или о том, где получить доступ к ресурсу, не предоставляется. Он был удален на неопределенный срок. Для получения дополнительной информации о коде ошибки 410 Gone см. RFC7231, раздел 6.5.9

.

411: Требуемая длина

Код состояния ошибки 411 Требуется длина указывает, что сервер не разрешает запрос от клиента из-за предопределенной длины содержимого тела запроса. Запрос может быть повторен клиентом, если в последующем запросе ресурса указан допустимый заголовок Content-Length.Для получения дополнительной информации о коде ошибки 411 Length Required см. RFC7231, раздел 6.5.10

.

412: Ошибка предварительного условия

Условные запросы к серверу разрешены как часть протокола HTTP. Если в запросе выполняются правильные условия, запрос выполняется и обрабатывается сервером. Код состояния ошибки 412 Precondition Failed означает, что не удалось выполнить одно или несколько условий в заголовке запроса. Например, это можно использовать в запросах GET, а условный запрос используется для возврата ресурса, только если этот ресурс изменился.Для получения дополнительной информации о коде ошибки 412 Precondition Failed см. RFC7232, раздел 4.2

.

413: Слишком большой объект запроса

Код состояния ошибки 413 Request Entity Too Large указывает на то, что сервер не примет и не обработает запрос из-за того, что тело запроса больше, чем сервер допускает или может обработать. Такие примеры включают загрузку файла, когда файл превышает максимальный размер загрузки, установленный сервером, или когда было превышено максимальное количество загрузок.В случаях, когда возникает ошибка 413 Request Entity Too Large, сервер может полностью закрыть соединение, чтобы предотвратить продолжение отправки запроса клиентом. В некоторых случаях вполне вероятно, что сервер разрешит клиенту повторить запрос, если это временное состояние, и должен вернуть это сообщение клиенту. Однако возможно, что запрос может привести к тому, что на самом сервере закончится свободное место на физическом диске. В этом случае ошибка 507 Недостаточно места для хранения — это ответ, который клиент должен получить обратно.См. RFC7231, раздел 6.5.11 для получения дополнительной информации.

414: слишком длинный URI

Не очень распространенный ответ сервера, код ошибки 414 URI Too Long означает, что сервер отклонил запрос клиента из-за того, что URL-адрес длиннее, чем сервер может обработать. Браузеры и поисковые системы действительно устанавливают ограничения на длину URL-адресов, отчасти для предотвращения DDoS-атак или ошибок кода, но путь URL-адреса или HTTP не имеет явных ограничений. Таким образом, если предел превышает значение, установленное сервером, возникает ошибка 414 URI Too Long.Дополнительные сведения о коде ошибки 414 URI Too Long см. В RFC7231, раздел 6.5.12

.

415: неподдерживаемый тип носителя

Код состояния ошибки 415 Unsupported Media Type указывает, что сервер не может обработать тело запроса или его часть из-за неподдерживаемого формата мультимедиа. Даже если запрос от клиента поддерживается, ошибка 415 может быть возвращена, если в теле запроса есть неподдерживаемый контент. Код ошибки 415 Unsupported Media Type аналогичен коду состояния 406 Not Acceptable.Разница в том, что код ошибки 406 Not Acceptable возникает не из-за содержимого в заголовке или кодировки, а из-за значения, установленного в заголовке HTTP. Обеспечение того, чтобы сервер мог обрабатывать определенный формат вместе с отправкой запроса с правильной формой, позволит избежать появления кода состояния ошибки 415 Unsupported Media Type. См. RFC7231, раздел 6.5.13 для получения дополнительной информации.

416: диапазон не соответствует

Как упоминалось в коде состояния частичного запроса 206, клиенты / браузеры могут запросить частичный ответ обратно с сервера, будь то конкретная часть файла или видео, например.Клиенты и серверы используют так называемые запросы диапазона для выполнения этих запросов. Однако, если сервер не поддерживает эти типы запросов, он просто вернет весь ресурс вместе с ответом 200 OK. Если сервер поддерживает запросы диапазона, именно здесь код состояния ошибки 416 Partial Request входит в изображение и возвращает то, что запрашивает клиент. В ситуации, когда сервер поддерживает запросы диапазона, но сервер не согласен с полученным запросом, поскольку он не попадает в этот диапазон или, возможно, выходит за его пределы, будет возвращен код состояния ошибки 416 Range Not Satisfiable.См. RFC7233, раздел 4.4 для получения дополнительной информации.

417: Ожидание не выполнено

Клиенты могут использовать заголовок Expect , чтобы указать, что они ожидают определенного поведения от сервера. Как описано в коде состояния 100 Continue, клиенты могут проверить на сервере, примет ли он запрос. Если это так, сервер ответит кодом состояния 100 Continue. В противном случае код состояния ошибки 417 Expectation Failed указывает на то, что сервер не понял заголовок Expect или не поддерживает его, поэтому он не может обработать запрос клиента.Для получения дополнительной информации о коде ошибки 417 Expectation Failed см. RFC7231, раздел 6.5.14

.

418-42 0 : не назначено

Коды состояния ошибки 418-421 в настоящее время не назначены, однако в некоторых случаях используется код состояния 418 I’m a Little Teapot. Созданный как первоапрельская шутка, он приобрел некоторую популярность и иногда используется как шутка или пасхальное яйцо, а не в повседневных целях. Большинство браузеров игнорируют его, поскольку это не официальный код статуса.Еще один в этой категории — код состояния ошибки 420 Enhance Your Calm, представленный Twitter. Это код ошибки, который сообщает клиентам, что их скорость ограничена, что является ограничением количества запросов, которые они могут сделать в течение определенного периода времени. С 1989 года редактор RFC будет публиковать более юмористические RFC. В Википедии есть полное изложение наиболее юмористических первоапрельских RFC.

421: неверный запрос

Появившийся с протоколом HTTP / 2, код ошибки 421 Misdirected Request означает, что сервер получил запрос, который не был предназначен для этого конкретного сервера и не может правильно ответить.Это может произойти, если DNS (система доменных имен) настроен на неправильный IP-адрес. Клиенты должны включать в запрос заголовок Host . Это также может происходить с сайтами, имеющими один сертификат SSL из нескольких доменов. Это может быть вызвано проблемой с хостинг-провайдером и / или конкретным браузером, поэтому может потребоваться большая работа, чтобы действительно понять, в чем проблема. Если сервер знает, что домен не настроен для запроса, он ответит ответом с ошибкой 421 Misdirected Request.См. RFC7540, раздел 9.1.2 для получения дополнительной информации.

422: Необработанный Сущность

Код состояния ошибки 422 Unprocessable Entity указывает на проблему с содержимым синтаксиса запроса. Расположение запроса было понято сервером, но поля в запросе недействительны или не соответствуют ожиданиям сервера. Как и коды состояния 102 Processing и 207 Multi-Status, код ошибки 422 Unprocessable Entity является частью протокола WebDAV и часто используется с веб-сервисами / API.Как правило, рекомендуется ответ 400 Bad Request, но если WebDAV поддерживается, следует использовать 422 Unprocessable Entity. См. RFC4918, раздел 11.2 для получения дополнительной информации.

423: заблокировано

Как и код состояния ошибки 422 Unprocessable Entity, код состояния ошибки 423 Locked также является частью протокола WebDAV. Код состояния 423 Locked указывает, что файл, ресурс или напрямую, например, не могут быть отредактированы. Его цель — избежать обновления файла, ресурса и т. Д. Несколькими пользователями., одновременно. Затем эти ресурсы можно разблокировать для редактирования, когда это необходимо. Дополнительные сведения о коде ошибки 423 Locked см. В RFC4918, раздел 11.3

.

424: сбойная зависимость

Другой код состояния, поддерживаемый протоколом WebDav; код состояния ошибки 424 Failed Dependency указывает, что запрос от клиента не удался из-за зависимости от другого запроса, который также не удался. WebDAV использует метод, известный как PROPPATCH , для обновления определенных свойств ресурсов.Чтобы указать, был ли ресурс обновлен успешно или нет, WebDAV использует стандартные ответы с кодом состояния HTTP. Кроме того, код состояния 424 Failed Dependency используется только в том случае, если ответ в теле HTTP имеет ответ 207 Multi-Status. Таким образом, если используется PROPPATCH и ресурс не обновляется, он отправит код состояния 4xx, указывающий, что произошла ошибка при обновлении ресурса, код ошибки 424 Failed Dependency также будет отправлен вместе с другими запросами, которые зависят от этого обновления. был успешным, но потерпел неудачу.См. RFC4918, раздел 11.4 для получения дополнительной информации.

425: Слишком рано

Не распространенный код состояния HTTP, который используется сегодня, код ответа об ошибке 425 Too Early используется в ситуациях, когда клиент HTTP подключается к клиенту HTTPS. Во время этого процесса может потребоваться много времени, чтобы установить соединение между сервером и клиентом. Этот процесс может создать проблему безопасности, поэтому сервер скажет клиенту повторить запрос до тех пор, пока не будет установлено безопасное соединение TLS (Transport Layer Security).В этом случае будет возвращен код состояния 425 Too Early. Для получения дополнительной информации о коде ошибки 425 Too Early, см. RFC8470, раздел 5.2

426: требуется обновление

Код состояния ошибки 426 Требуется обновление указывает клиенту, что ему необходимо использовать более новый протокол для отправки запросов на сервер. Например, клиент может использовать более старую версию HTTP, например HTTP / 1.0, но серверу требуется HTTP2.0. Сервер не примет запрос, но ответит клиенту, указав, какой протокол или протоколы приемлемы.Как только клиент перейдет на требуемый протокол (ы), сервер будет принимать запросы от клиента. Для получения дополнительной информации о коде ошибки 426 Upgrade Required см. RFC7231, раздел 6.5.15

.

427: не назначен

Код состояния ошибки 427 в настоящее время не назначен.

428: Требуется предварительное условие

Код состояния ошибки «Требуется предварительное условие 428» указывает клиенту, что запрос к серверу должен быть условным.Как указано в коде состояния 304 Not Modified, клиент может отправить условный запрос на сервер, например If-Match , If-None-Match , If-Modified-Since , If-Unmodified- Начиная с или If-Range . Однако эти условные запросы не требуются. Если они требуются сервером, сервер указывает на это, отвечая кодом ошибки 428 «Требуется предварительное условие». Это немного похоже на код ошибки 412 Precondition Failed, но код ошибки 412 Precondition Failed возвращается только в том случае, если клиент включил в заголовок условный запрос, который не соответствует состоянию ресурса на стороне сервера.Уведомление пользователей о том, что запросы должны быть условными по своей природе, гарантирует, что пользователи работают с нужными файлами или ресурсами, и помогает предотвратить потенциальную перезапись пользователями изменений. См. RFC6585, раздел 3 для получения дополнительной информации.

429: слишком много запросов

Так же, как указывает название кода ошибки, код состояния ошибки 429 Too Many Requests означает, что ограничение скорости реализовано, и что клиент превысил ограничение на количество запросов, которое он может сделать за указанный промежуток времени.Наряду с ответом об ошибке 429 Too Many Requests следует указать, сколько времени ждать, прежде чем инициировать новый запрос к серверу, но раньше это не требовалось. Дополнительные сведения о коде ошибки «Слишком много запросов» см. В RFC6585, раздел 4

.

430: не назначен

Код состояния ошибки 430 в настоящее время не назначен, однако одно время предлагалось использовать код ошибки 430, который будет блокировать в протоколе HTTP / 1.1. Цель заключалась в том, чтобы служить ответом на так называемую конвейерную обработку.Это позволяло клиентам отправлять несколько запросов через TCP-соединение, пока сервер ждал ответа. Он так и не стал официально стандартом, так как протокол HTTP был обновлен до HTTP / 2.0, а поддержка конвейерной обработки так и не получила широкого распространения.

431 Заголовки запросов слишком большие

Код ошибки 431 Request Headers Too Large указывает на то, что клиент отправил запрос заголовка, превышающий допустимый предел. Разные веб-серверы имеют разные допустимые ограничения на размер заголовков.Это могло произойти из-за слишком большого размера отдельного запроса заголовка или из-за всего объединенного размера всех запросов заголовка. В большинстве случаев это легко исправить, поскольку обычно это вызвано отправкой слишком большого количества файлов cookie или файлов cookie слишком большого размера. Дополнительные сведения о коде ошибки 431 Request Headers Too Large см. В RFC6585, раздел 5

.

432-450 : Без назначения

Коды состояния ошибки с 432 по 450 в настоящее время не назначены.

451: Недоступен по юридическим причинам

Код состояния ошибки 451 Недоступен по юридическим причинам указывает, что сервер отказывается обслуживать запрошенное содержимое по юридическим причинам, а также должен указать причину ошибки в ответе пользователю. Причины использования кода состояния ошибки 451 Недоступен по юридическим причинам могут включать в себя правительства, которые подвергают цензуре определенный контент, контент, нарушающий законы об авторском праве, например DMCA (законы об авторском праве в цифровую эпоху), или контент, который нарушает законы или постановления суда.Коды состояния ошибки 403 запрещен и 404 не найден иногда используются вместо кода состояния ошибки 451, но код состояния ошибки 451 предоставляет дополнительную информацию или объяснение причин возникновения ошибки. Обычно пользователи обходят ошибку 451, внедряя VPN для доступа к контенту. См. RFC7725, раздел 3 для получения дополнительной информации.

452-499: не назначен

Коды ошибок 452-499 в настоящее время не назначены.

5xx: ошибка сервера

Как и коды состояния 4xx, коды состояния 5xx указывают на наличие ошибки, однако данная ошибка, скорее всего, не связана с плохим соединением или самим браузером.Коды состояния 5xx указывают на наличие проблемы на уровне сервера и невозможность обработки запроса от клиента. Наряду с ошибкой сервер должен ответить с объяснением ошибки, является ли она временным или постоянным состоянием, и как ее можно исправить.

500: внутренняя ошибка сервера

Код состояния 500 Internal Server Error просто означает, что сервер обнаружил проблему и не может обработать запрос. Как правило, код внутренней ошибки сервера 500 используется больше как общий код ошибки сервера, если конкретная проблема не попадает ни в одну из других спецификаций кода состояния ошибки сервера 5xx.Код внутренней ошибки сервера 500, вероятно, является наиболее используемым из кодов классификации ошибок сервера 5xx. См. RFC7231, раздел 6.6 для получения дополнительной информации.

501 : Не реализовано

Коды состояния ошибки 501 не реализованы возникают, когда сервер не распознает метод запроса и, следовательно, не может поддерживать или обрабатывать запрос. Это похоже на код состояния ошибки клиента 405 «Метод не разрешен», но код состояния ошибки 501 не реализован может указывать на то, что метод запроса от клиента действителен, но не поддерживается сервером.Состояние ошибки 405 Method Not Allowed означает, что метод, вызываемый клиентом, не поддерживается и не должен использоваться. См. RFC7231, раздел 6.6.2 для получения дополнительной информации.

502 : Плохой шлюз

Код состояния ошибки 502 Bad Gateway означает, что сервер действует как прокси и получил ответ от исходного сервера, который вернулся как недопустимый. Возможно, это связано с перегрузкой сервера, и клиент может повторно отправить запрос, но в большинстве случаев это связано с проблемой с веб-сервером или CDN (сетью распространения контента), находящейся между клиентом и сервером, и может потребоваться дополнительная устранение неполадок с хостинг-провайдером, чтобы понять, почему возникает ошибка.См. RFC7231, раздел 6.6.3 для получения дополнительной информации.

503 : Служба недоступна

Код состояния ошибки 503 Service Unavailable указывает на то, что сервер в настоящее время перегружен запросами или не имеет ресурсов, в настоящее время находится на обслуживании или, возможно, приложение, к которому они пытаются получить доступ, не работает, и сервер не может выполнить запрос из-за Текущее состояние. Клиенты иногда будут видеть сообщение вместе с кодом состояния ошибки 503 Service Unavailable, в котором им предлагается повторить попытку позже.Однако он может не дать окончательного объяснения того, когда и как долго может длиться код состояния ошибки 503 Service Unavailable. См. RFC7231, раздел 6.6.4 для информации.

504: Тайм-аут шлюза

Как и код состояния ошибки 502 Bad Gateway, код состояния ошибки 504 Gateway Timeout используется, когда сервер действует как прокси, но отвечает кодом состояния ошибки 504 Gateway Timeout, если ответ от исходного сервера занимает слишком много времени.Код состояния ошибки 502 Bad Gateway следует использовать в случаях, когда ответ был недействительным или вообще не был получен прокси-сервером. Сообщение вместе с таймаутом шлюза 504 может указывать и рекомендовать клиенту попробовать повторно отправить запрос. См. RFC7231, раздел 6.6.5 для получения дополнительной информации.

505: Версия HTTP не поддерживается

Код состояния ошибки 505 HTTP Version Not Supported означает, что сервер не поддерживает версию протокола HTTP, используемую в сообщении запроса, и, следовательно, не может обработать запрос.Наряду с кодом состояния ошибки 505 HTTP Version Not Supported, ответ сервера должен включать сообщение, указывающее, почему этот конкретный протокол HTTP не поддерживается и какие протоколы поддерживаются. См. RFC7231, раздел 6.6.6 для получения дополнительной информации.

506: Вариант также согласовывает

Вариант 506 также согласовывает — это экспериментальный код состояния HTTP, который сегодня не является частью стандарта. Вариант 506 также согласовывает, что есть проблема внутренней конфигурации с сервером из-за проблем согласования содержимого.Согласование содержимого позволяет клиентам отправлять несколько заголовков принятия и сообщает серверу, какое конкретное представление ресурса следует обслуживать, как указано браузером. Это может быть для обслуживания правильного языка, формата документа и т. Д. Несмотря на то, что код состояния ошибки 506 Variant также Negotiates находится в экспериментальном статусе и официально не является частью стандарта HTTP, он используется в редких случаях. Некоторые пользователи Google Play сталкивались с этой проблемой в прошлом при попытке загрузить несколько версий приложения, из-за чего их устройства постоянно пытались загрузить приложение в процессе замкнутого цикла.См. RFC2295, раздел 8.1 для получения дополнительной информации.

507: недостаточно памяти

Код состояния ошибки сервера 507 «Недостаточно хранилища» также является частью протокола WebDAV. Код состояния ошибки 507 Недостаточно памяти указывает клиенту, что запрос, например запрос PUT или POST , был слишком большим по размеру файла. Это также может указывать на то, что на сервере временно закончилась память. См. RFC4981, раздел 11.5 для получения дополнительной информации.

508: обнаружен цикл

Код состояния ошибки сервера «Обнаружен цикл 508», как и код ошибки сервера 507 «Недостаточно хранилища», является частью протокола WebDAV. В рамках протокола WebDAV клиент может сделать запрос к серверу для всего каталога и создать цель где-нибудь в том же каталоге, что приведет к бесконечному циклу запрос / ответ. Код состояния ошибки сервера 508 Loop Detected указывает на то, что сервер завершил клиентский запрос, в частности Depth: In f inity , потому что сервер идентифицировал запрос как приводящий к бесконечному циклу, многократно перезвонив сам себе.См. RFC5842, раздел 7.2 для получения дополнительной информации.

509: не назначен

Код состояния ошибки сервера 509 в настоящее время не назначен.

510: не расширен

Код состояния ошибки сервера 510 Not Extended в настоящее время находится в предлагаемом / экспериментальном состоянии и не является частью стандартной спецификации кода состояния HTTP. 510 Not Extended указывает клиенту, что запрос требует расширенного HTTP-запроса.Если сервер отвечает кодом состояния ошибки сервера 510 Not Extended, в нем также должно быть указано, как клиент должен исправить свой запрос, но в спецификации это явно не указано. Споры ведутся о том, должно ли это подпадать под классификацию ошибок сервера 5xx, поскольку это можно рассматривать как ошибку клиента 4xx, но поскольку это формально не является частью стандарта, это не актуально и редко используется для повседневного использования. См. RFC2774, раздел 7 для получения дополнительной информации.

511: Требуется авторизация сети

Код состояния ошибки сервера 511 Network Authorization Required, требующий от клиента аутентификации для получения доступа к сети.Например, пользователи могут увидеть это при попытке подключиться к публичной сети Wi-Fi на предприятии, и пользователи должны согласиться с их условиями, прежде чем им будет предоставлен доступ. Наряду с ответом сервера об ошибке 511 Network Authorization Required, пользователи также должны быть направлены туда, где они могут войти в систему. Для получения дополнительной информации см. RFC6585, раздел 6.

512-599: не назначен

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

Мониторинг Код состояния HTTP Ответы

Чтобы увидеть список кодов состояния для определенного URL из первых рук, вы можете проверить вкладку инструментов разработчика в своем браузере. Наряду с метриками скорости загрузки страницы вы также можете просматривать любые ответы сервера вместе со всеми связанными кодами состояния HTTP, чтобы убедиться, что все на вашей странице загружается и отображается правильно.

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

Полное руководство и список кодов ошибок (2021)

Коды состояния HTTP

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

Сообщения такого типа возвращаются каждый раз, когда ваш браузер взаимодействует с сервером, даже если вы их не видите. Если вы владелец или разработчик веб-сайта, очень важно понимать коды статуса HT TP . Когда они появляются, коды состояния HTTP являются бесценным инструментом для диагностики и исправления ошибок конфигурации веб-сайта.

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

Давайте погрузимся!

Предпочитаете посмотреть видео версию?

Что такое коды состояния HTTP?

Каждый раз, когда вы нажимаете ссылку или вводите URL-адрес и нажимаете Введите , ваш браузер отправляет запрос на веб-сервер для сайта, к которому вы пытаетесь получить доступ. Сервер получает и обрабатывает запрос, а затем отправляет обратно соответствующие ресурсы вместе с HTTP-заголовком.

Коды статуса HTTP

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

Обычно ошибка отображается в браузере только тогда, когда что-то идет не так. Это способ сказать серверу: «Что-то не так. Вот код, объясняющий, что пошло не так «.

Код статуса HTTP 404 Google

Если вы хотите видеть коды состояния, которые ваш браузер обычно не отображает, существует множество различных инструментов, которые упрощают эту задачу. Расширения браузера доступны для удобных для разработчиков платформ, таких как Chrome и Firefox, и существует множество веб-инструментов для извлечения заголовков, таких как Web Sniffer.

Чтобы просмотреть коды состояния HTTP с помощью одного из этих инструментов, найдите строку в верхней части отчета с надписью «Состояние: HTTP / 1.1». За этим последует код состояния, возвращенный сервером.

Общие сведения о классах кода состояния HTTP

Коды статуса HTTP

делятся на 5 «классов». Это группы ответов, которые имеют схожие или связанные значения. Знание того, что они собой представляют, может помочь вам быстро определить общее содержание кода состояния , прежде чем вы начнете искать его конкретное значение.

Пять классов включают:

  • 100s: Информационные коды, указывающие, что запрос, инициированный браузером, продолжается.
  • 200s: Коды успеха возвращены, когда запрос браузера был получен, понят и обработан сервером.
  • 300s: Коды перенаправления возвращаются, когда новый ресурс заменен запрошенным.
  • 400s: Коды ошибок клиента, указывающие на проблему с запросом.
  • 500s: Коды ошибок сервера, указывающие, что запрос был принят, но ошибка на сервере помешала его выполнению.

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

Почему коды статуса и ошибки HTTP имеют значение для поисковой оптимизации (SEO)

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

Вообще говоря, 100- и 200-уровневые коды состояния HTTP не сильно повлияют на ваше SEO. Они сигнализируют о том, что на вашем сайте все работает должным образом, и позволяют ботам поисковых систем продолжать свой путь. Однако они не повысят ваш рейтинг.

По большей части для SEO важны коды более высокого уровня.Ответы на уровне 400 и 500 могут помешать ботам сканировать и индексировать ваши страницы. Слишком большое количество этих ошибок также может указывать на низкое качество вашего сайта, что может снизить ваш рейтинг.

Подпишитесь на информационный бюллетень

Хотите узнать, как мы увеличили трафик более чем на 1000%?

Присоединяйтесь к 20 000+ других, которые получают нашу еженедельную рассылку с инсайдерскими советами по WordPress!

Подпишитесь сейчас

300-уровневые коды имеют немного более сложные отношения с SEO.Главное, что вам нужно знать, чтобы понять их влияние, — это разница между постоянной и временной переадресацией, о которой мы расскажем более подробно в соответствующем разделе ниже.

Вкратце, однако, постоянные перенаправления долей ссылок из обратных ссылок, а временные — нет. Другими словами, когда вы используете временную переадресацию для перемещенных страниц, вы теряете преимущество SEO, связанное с построением ссылок.

Проверка кодов состояния HTTP в консоли поиска Google

Один из способов отслеживать, как Google воспринимает коды состояния HTTP на вашем сайте, — использовать Google Search Console.Вы можете просмотреть коды состояния на уровне 300, 400 и 500 в отчете Покрытие :

Отчет об охвате Google Search Console

В этой области панели инструментов отображаются четыре типа контента на вашем сайте:

  • Страницы, возвращающие ошибки.
  • Действительные страницы с предупреждениями.
  • Действительные ресурсы.
  • Контент исключен из индекса.

Вы можете найти страницы с кодами состояния HTTP 300, 400 и 500 в разделах Excluded , Error или Valid with warnings разделов, в зависимости от типа кода.Например, 301 редирект может быть указан в списке Исключено как страница с перенаправлением :

Страница с переадресацией в отчете об охвате в Google Search Console.

Коды состояния с 400 и 500 уровнями, скорее всего, появятся под ошибкой .

Другой способ просмотреть коды состояния HTTP — использовать инструмент URL Inspection . Если Google не может проиндексировать конкретную страницу из-за ошибки, вы увидите это здесь:

Ошибка 404 в инструменте проверки URL в Google Search Console

Дополнительные советы по использованию Google Search Console см. В нашем подробном руководстве по платформе.

Полное руководство и список кодов состояния HTTP

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

100 кодов состояния

100-уровневый код состояния сообщает вам, что запрос, который вы отправили на сервер, по какой-то причине все еще обрабатывается. Это не обязательно проблема, это просто дополнительная информация, чтобы вы знали, что происходит.

  • 100: «Продолжить». Это означает, что рассматриваемый сервер получил заголовки запроса вашего браузера и теперь готов к отправке тела запроса. Это делает процесс запроса более эффективным, поскольку он не позволяет браузеру отправлять запрос тела, даже если заголовки были отклонены.
  • 101: «Протоколы переключения». Ваш браузер попросил сервер изменить протоколы, и сервер выполнил.
  • 103: «Ранние намеки.”Это возвращает некоторые заголовки ответа до того, как остальная часть ответа сервера будет готова.

200 кодов состояния

Это лучший вид кода состояния HTTP для получения. Ответ на 200 уровней означает, что все работает именно так, как должно.

  • 200: «Все в порядке». Это код, который доставляется, когда веб-страница или ресурс действуют именно так, как от них ожидается.
  • 201: «Создано». Сервер выполнил запрос браузера и в результате создал новый ресурс.
  • 202: «Принято». Сервер принял запрос вашего браузера, но все еще обрабатывает его. Запрос в конечном итоге может привести или не привести к завершенному ответу.
  • 203: «Неавторизованная информация». Этот код состояния может появиться, когда прокси-сервер используется. Это означает, что прокси-сервер получил код состояния 200 «Все в порядке» от исходного сервера, но изменил ответ, прежде чем передать его в ваш браузер.
  • 204: «Нет содержимого.” Этот код означает, что сервер успешно обработал запрос, но не собирается возвращать какой-либо контент.
  • 205: «Сбросить содержимое». Как и код 204, это означает, что сервер обработал запрос, но не собирается возвращать какой-либо контент. Однако для этого также требуется, чтобы ваш браузер сбрасывал представление документа.
  • 206: «Частичное содержимое». Вы можете увидеть этот код состояния, если ваш HTTP-клиент (также известный как ваш браузер) использует «заголовки диапазона».Это позволяет вашему браузеру возобновлять приостановленные загрузки, а также разделять загрузку на несколько потоков. Код 206 отправляется, когда заголовок диапазона заставляет сервер отправлять только часть запрошенного ресурса.

300 кодов состояния

Перенаправление — это процесс, используемый для сообщения о том, что ресурс был перемещен в новое место. Есть несколько кодов статуса HTTP, которые сопровождают перенаправления, чтобы предоставить посетителям информацию о том, где найти контент, который они ищут.

  • 300: «Множественный выбор». Иногда может быть несколько возможных ресурсов, которыми сервер может ответить для выполнения запроса вашего браузера. Код состояния 300 означает, что теперь вашему браузеру необходимо выбрать между ними. Это может произойти, когда доступно несколько расширений типов файлов или если сервер испытывает неоднозначность смысла слов.
  • 301: «Запрошенный ресурс был перемещен навсегда». Этот код доставляется, когда веб-страница или ресурс постоянно заменяются другим ресурсом.Он используется для постоянного перенаправления URL.
  • 302: «Запрошенный ресурс перемещен, но найден». Этот код используется, чтобы указать, что запрошенный ресурс был найден, но не в том месте, где он ожидался. Он используется для временного перенаправления URL-адресов.
  • 303: «См. Другое». Для понимания кода состояния 303 необходимо знать разницу между четырьмя основными методами HTTP-запроса. По сути, код 303 сообщает вашему браузеру, что он нашел ресурс, запрошенный вашим браузером через POST, PUT или DELETE.Однако, чтобы получить его с помощью GET, вам необходимо сделать соответствующий запрос на другой URL-адрес, чем тот, который вы использовали ранее.
  • 304: «Запрошенный ресурс не изменялся с момента последнего обращения к нему». Этот код сообщает браузеру, что ресурсы, хранящиеся в кеше браузера, не изменились. Он используется для ускорения доставки веб-страниц за счет повторного использования ранее загруженных ресурсов.
  • 307: «Временное перенаправление». Этот код состояния заменил 302 «Найдено» как соответствующее действие, когда ресурс был временно перемещен на другой URL-адрес.В отличие от кода состояния 302, он не позволяет изменять метод HTTP.
  • 308: «Постоянное перенаправление». Код состояния 308 является преемником кода 301 «Перемещен навсегда». Он не позволяет изменять метод HTTP и указывает, что запрошенный ресурс теперь постоянно находится по новому URL-адресу.

400 кодов состояния

На уровне 400 коды состояния HTTP начинают вызывать проблемы. Это коды ошибок, указывающие на неисправность вашего браузера и / или запроса.

  • 400: «Неверный запрос». Сервер не может вернуть ответ из-за ошибки на стороне клиента. См. Наше руководство по устранению этой ошибки.
  • 401: «Неавторизовано» или «Требуется авторизация». Это возвращается сервером, когда у целевого ресурса отсутствуют действительные учетные данные для аутентификации. Вы можете увидеть это, если настроили базовую HTTP-аутентификацию с помощью htpasswd.

Ошибка авторизации Nginx 401 в Chrome

  • 402: «Требуется оплата.«Изначально этот код создавался для использования в составе системы цифровых денег. Однако этот план так и не был реализован. Вместо этого он используется различными платформами, чтобы указать, что запрос не может быть выполнен, обычно из-за нехватки необходимых средств. Общие примеры включают:
  • 403: «Доступ к этому ресурсу запрещен». Этот код возвращается, когда пользователь пытается получить доступ к тому, что у него нет разрешения на просмотр. Например, попытка получить доступ к защищенному паролем содержимому без входа в систему может привести к ошибке 403.
  • 404: «Запрошенный ресурс не найден». Это наиболее частое сообщение об ошибке из всех. Этот код означает, что запрошенный ресурс не существует, и сервер не знает, существовал ли он когда-либо.
  • 405: «Метод запрещен». Он создается, когда хост-сервер (исходный сервер) поддерживает полученный метод, а целевой ресурс — нет.
  • 406: «Неприемлемый ответ». Запрошенный ресурс может генерировать только контент, который неприемлем в соответствии с заголовками принятия, отправленными в запросе.
  • 407: «Требуется проверка подлинности прокси». Прокси-сервер используется и требует, чтобы ваш браузер прошел аутентификацию, прежде чем продолжить.
  • 408: «Истекло время ожидания сервера для оставшейся части запроса от браузера». Этот код генерируется, когда сервер истекает в ожидании полного запроса от браузера. Другими словами, сервер не получил полного запроса, отправленного браузером. Одной из возможных причин может быть перегрузка сети, приводящая к потере пакетов данных между браузером и сервером.
  • 409: «Конфликт». Код состояния 409 означает, что сервер не может обработать запрос вашего браузера из-за конфликта с соответствующим ресурсом. Иногда это происходит из-за одновременного редактирования нескольких файлов.
  • 410: «Запрошенный ресурс исчез и больше не будет возвращаться». Это похоже на код 404 «Не найдено», за исключением того, что 410 указывает, что состояние является ожидаемым и постоянным.
  • 411: «Требуемая длина». Это означает, что запрашиваемый ресурс требует, чтобы клиент указывал определенную длину, а это не так.
  • 412: «Предварительное условие не выполнено». Ваш браузер включил определенные условия в заголовки запросов, и сервер не соответствовал этим требованиям.
  • 413: «Слишком большая полезная нагрузка» или «Слишком большой объект запроса». Ваш запрос больше, чем сервер может или может обработать.
  • 414: «Слишком длинный URI». Обычно это результат запроса GET, который был закодирован как строка запроса, которая слишком велика для обработки сервером.
  • 415: «Неподдерживаемый тип носителя». Запрос включает тип мультимедиа, который сервер или ресурс не поддерживает.
  • 416: «Недопустимый диапазон». Ваш запрос был на часть ресурса, которую сервер не может вернуть.
  • 417: «Ожидание не выполнено». Сервер не может удовлетворить требования, указанные в поле заголовка expect запроса.
  • 418: «Я чайник». Этот код возвращают чайники, которые получают запросы на заваривание кофе.Это еще и первоапрельская шутка 1998 года.

418 Код статуса «Я чайник»

  • 422: «Необработанная сущность». Клиентский запрос содержит семантические ошибки, и сервер не может их обработать.
  • 425: «Слишком рано». Этот код отправляется, когда сервер не желает обрабатывать запрос, потому что он может быть воспроизведен.
  • 426: «Требуется обновление». Из-за содержимого поля заголовка запроса обновления клиент должен переключиться на другой протокол.
  • 428: «Требуется предварительное условие». Сервер требует, чтобы перед обработкой запроса были указаны условия.
  • 429: «Слишком много запросов». Это генерируется сервером, когда пользователь отправил слишком много запросов за заданный промежуток времени (ограничение скорости). Иногда это может происходить из-за того, что боты или скрипты пытаются получить доступ к вашему сайту. В этом случае вы можете попробовать изменить URL-адрес для входа в WordPress. Вы также можете ознакомиться с нашим руководством по исправлению ошибки 429 «Слишком много запросов».

429 слишком много запросов

  • 431: «Поля заголовка запроса слишком велики». Сервер не может обработать запрос, поскольку поля заголовка слишком велики. Это может указывать на проблему с одним полем заголовка или со всеми ими вместе.
  • 451: «Недоступно по юридическим причинам». Оператор сервера получил требование запретить доступ к запрошенному вами ресурсу (или к набору ресурсов, включая тот, который вы запросили).Интересный факт: этот код является отсылкой к роману Рэя Брэдбери « Фаренгейт 451 ».
  • 499: «Клиент закрыл запрос». Это возвращается NGINX, когда клиент закрывает запрос, пока Nginx все еще обрабатывает его.

500 кодов состояния

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

  • 500: «На сервере произошла ошибка, и запрос не может быть выполнен.Это общий код, который просто означает «внутренняя ошибка сервера». Что-то пошло не так на сервере, и запрошенный ресурс не был доставлен. Этот код обычно создается сторонними плагинами, неисправным PHP или даже нарушением соединения с базой данных. Ознакомьтесь с нашими руководствами о том, как исправить ошибку при установлении соединения с базой данных и о других способах устранения внутренней ошибки сервера 500.

Ошибка при установлении соединения с базой данных

  • 501: «Не реализовано.Эта ошибка указывает на то, что сервер не поддерживает функции, необходимые для выполнения запроса. Это почти всегда проблема самого веб-сервера и обычно должна решаться хостом. Ознакомьтесь с нашими рекомендациями по устранению невыполненной ошибки 501.
  • 502: «Плохой шлюз». Этот код ошибки обычно означает, что один сервер получил недопустимый ответ от другого, например, когда используется прокси-сервер. В других случаях запрос или запрос занимает слишком много времени, поэтому он отменяется или прерывается сервером, и соединение с базой данных прерывается.Для получения дополнительных сведений см. Наше подробное руководство о том, как исправить ошибку 502 Bad Gateway.
  • 503: «Сервер сейчас недоступен для обработки этого запроса». Запрос не может быть выполнен на данный момент. Этот код может быть возвращен перегруженным сервером, который не может обрабатывать дополнительные запросы. У нас есть полное руководство по исправлению ошибки 503 Service Unavailable.
  • 504: «Сервер, действующий как шлюз, истекло время ожидания ответа от другого сервера.Это код, возвращаемый, когда два сервера участвуют в обработке запроса, и время ожидания первого сервера истекает, пока второй сервер не ответит. Вы можете узнать больше о том, как исправить ошибку 504, в нашем специальном руководстве.
  • 505: «Версия HTTP не поддерживается». Сервер не поддерживает версию HTTP, которую клиент использовал для запроса.
  • 508 : достигнуты ограничения на ресурсы, установленные вашим веб-хостом. Ознакомьтесь с нашим руководством по устранению ошибки «Достигнут предел ресурса 508».
  • 511: «Требуется сетевая аутентификация». Этот код состояния отправляется, когда сеть, которую вы пытаетесь использовать, требует некоторой формы аутентификации перед отправкой вашего запроса на сервер. Например, вам может потребоваться принять Условия использования общедоступной точки доступа Wi-Fi.
  • 521: «Веб-сервер не работает». Ошибка 521 — это сообщение об ошибке, относящееся к Cloudflare. Это означает, что ваш веб-браузер смог успешно подключиться к Cloudflare, но Cloudflare не смог подключиться к исходному веб-серверу.
  • 525 : «Подтверждение связи SSL не удалось». Ошибка 525 означает, что установление связи SSL между доменом, использующим Cloudflare, и исходным веб-сервером не удалось. Если у вас возникли проблемы, вы можете попытаться легко исправить ошибку 525 пятью способами.

Где узнать больше о кодах состояния HTTP

Помимо кодов статуса HTTP, которые мы рассмотрели в этом списке, есть еще несколько неясных, о которых вы, возможно, захотите узнать. Есть несколько ресурсов, к которым вы можете обратиться, чтобы узнать об этих более редких кодах, в том числе:

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

Сначала они могут показаться устрашающими, но коды состояния HTTP важны для понимания того, что происходит на вашем сайте. Вот подробный список тех, с которыми вам стоит познакомиться! 📟🌐Нажмите, чтобы написать твит

Сводка

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

В этом посте мы определили более 40 кодов статуса HTTP, с которыми вы можете столкнуться.От более мягких кодов 100 и 200 уровней до более сложных ошибок 400 и 500 уровней, понимание этих сообщений имеет решающее значение для поддержания вашего веб-сайта и обеспечения его доступности для пользователей.


Если вам понравилась эта статья, то вам понравится хостинговая платформа Kinsta WordPress. Ускорьте свой сайт и получите круглосуточную поддержку от нашей опытной команды WordPress. Наша инфраструктура на базе Google Cloud ориентирована на автоматическое масштабирование, производительность и безопасность. Позвольте нам показать вам разницу в Kinsta! Ознакомьтесь с нашими планами

Коды состояния HTTP [SEO 2021]

Что такое коды состояния HTTP?

Код состояния HTTP — это ответ сервера на запрос браузера.Когда вы посещаете веб-сайт, ваш браузер отправляет запрос на сервер сайта, а затем сервер отвечает на запрос браузера трехзначным кодом: кодом состояния HTTP.

Эти коды состояния являются эквивалентом диалога между вашим браузером и сервером в Интернете. Они сообщают, все ли между ними в порядке, на ощупь, или что-то не так. Понимание кодов состояния и того, как их использовать, поможет вам быстро диагностировать ошибки сайта, чтобы минимизировать время простоя на вашем сайте.Вы даже можете использовать некоторые из этих кодов состояния, чтобы помочь поисковым системам и людям получить доступ к вашему сайту; переадресация 301, например, сообщит ботам и людям, что страница навсегда переместилась в другое место.

Первая цифра каждого трехзначного кода состояния начинается с одной из пяти цифр от 1 до 5; вы можете увидеть, что это выражается как 1xx или 5xx, чтобы указать коды состояния в этом диапазоне. Каждый из этих диапазонов включает отдельный класс ответа сервера.

Классы общих кодов состояния HTTP:

1xxs — Информационные ответы: Сервер обдумывает запрос.

2xxs — Успех! Запрос был успешно завершен, и сервер дал браузеру ожидаемый ответ.

3xxs — Перенаправление: Вы были перенаправлены в другое место. Запрос получен, но есть какое-то перенаправление.

4xxs — Ошибки клиента: Страница не найдена. Сайт или страница недоступны. (Запрос был сделан, но страница недействительна — это ошибка на стороне веб-сайта беседы и часто появляется, когда страницы не существует на сайте.)

5xxs — Ошибки сервера: Ошибка. Клиент сделал правильный запрос, но серверу не удалось его выполнить.

Самые важные коды статуса для оптимизаторов поисковой оптимизации

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

Представьте, что вы работаете над сайтом, на котором отображается много ошибок 5xx; вы должны знать, что это проблема сервера.Ошибки 4xx влияют на восприятие посетителями, поэтому вы можете сразу подумать о любых изменениях, которые вы внесли в свои URL, или о том, удалили ли вы какие-либо страницы. Как только вы поймете причину проблемы, вы можете взглянуть на реализацию настраиваемой страницы 404 или изучить возможность использования всемогущего перенаправления 301 для отправки посетителей в нужное место.

Стоит выучить и запомнить самые важные коды состояния, которые должен знать каждый оптимизатор поисковых систем:

Код состояния HTTP 200 — OK

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

Код состояния HTTP 301 — постоянное перенаправление

Перенаправление 301 должно использоваться каждый раз, когда один URL-адрес необходимо перенаправить на другой навсегда . Редирект 301 означает, что посетители и боты, попавшие на эту страницу, будут перенаправлены на новый URL. Кроме того, ссылочная стоимость — сила, передаваемая всеми этими с трудом заработанными ссылками на ваш контент — также передается новому URL-адресу через 301 редирект.Несмотря на заявления Google о том, что все перенаправления 3xx обрабатываются одинаково, тесты показали, что это не совсем так. Редирект 301 остается предпочтительным методом выбора для постоянных перенаправлений страниц.

Код состояния HTTP 302 — временное перенаправление

Перенаправление 302 похоже на перенаправление 301 в том, что посетители и боты переходят на новую страницу, но ссылочный вес не может передаваться. Мы не рекомендуем использовать 302 редирект для постоянных изменений. Использование 302 приведет к тому, что поисковые роботы будут рассматривать перенаправление как временное, что означает, что он не может передавать значение ссылки, как это делает волшебный 301.

Код состояния HTTP 404 — не найден

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

На каждом сайте есть страницы, которые возвращают 404 кода статуса. Эти страницы не всегда нужно перенаправлять; Есть и другие варианты. Распространенное заблуждение состоит в том, что оптимальной практикой поисковой оптимизации является простое перенаправление 301 страниц, возвращающих код статуса 404, на домашнюю страницу данного домена. На самом деле это плохая идея для большинства случаев, потому что это может сбить с толку пользователей, которые могут не осознавать, что веб-страница, к которой они пытались получить доступ, не существует.

Если страницы, возвращающие коды 404, являются страницами с высоким авторитетом и большим объемом трафика или имеют очевидный URL-адрес, на который предназначены посетители или ссылки, вам следует использовать 301 редирект на наиболее релевантную страницу.Например, если ваша страница о кексах без сахара больше не существует, вы можете перенаправить этот URL-адрес с 301 на страницу с категорией рецептов без сахара.

За пределами этих экземпляров может потребоваться, чтобы URL-адрес возвращал 404 специально — это предотвратит их индексирование и повторное сканирование поисковыми системами. Предоставьте своим посетителям наилучшие возможности с помощью настраиваемой страницы 404, как это предлагается в этом руководстве по Google Search Console. Например, сайты электронной коммерции часто создают страницы 404, когда товары заканчиваются, поэтому эти сайты являются отличными кандидатами для создания настраиваемой страницы 404 электронной коммерции.

Код состояния HTTP 410 — Исчез

410 более постоянный, чем 404; это означает, что страница исчезла. Страница больше не доступна с сервера, и адрес пересылки не настроен. Любые ссылки на вашем сайте, которые указывают на страницу 410, отправляют ботов и посетителей на мертвый ресурс, поэтому, если вы их видите, удалите любые ссылки или ссылки на них из своего контента.

Код состояния HTTP 500 — внутренняя ошибка сервера

Вместо проблемы с отсутствующими или не найденными страницами этот код состояния указывает на проблему с сервером.500 — это классическая ошибка сервера, которая повлияет на доступ к вашему сайту. Будут потеряны как посетители, так и боты, и ваша ссылочная стоимость никуда не денется. Поисковые системы предпочитают хорошо обслуживаемые сайты, поэтому вам нужно изучить эти коды статуса и исправить их, как только вы с ними столкнетесь.

HTTP Status Code 503 — Service Unavailable

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

Продолжайте учиться

Попробовать

  • MozBar — панель инструментов MozBar SEO позволяет вам видеть соответствующие показатели в вашем браузере при просмотре веб-страниц.

  • Link Explorer — ваш универсальный инструмент для создания ссылок. Быстро находите возможности для построения ссылок, отслеживайте обнаруженные и потерянные ссылки с течением времени и создавайте списки отслеживания ссылок, чтобы узнать, когда вы получили ссылку.Мощные данные о ссылках для более разумного построения ссылок.

Коды состояния HTTP — список стандартных кодов ответа сервера

Коды состояния HTTP

— это стандартные коды ответов, возвращаемые веб-сервером в ответ на сделанный им запрос.

Код состояния HTTP

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

Некоторые общие коды состояния:

  • 200 — сервер успешно вернул страницу
  • 404 — запрошенная страница не существует
  • 503 — сервер временно недоступен

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

1xx Информационный

100 Продолжить
Это означает, что клиент должен продолжить выполнение своего запроса. Сервер возвращает этот код ответа, чтобы сообщить клиенту, что начальная часть запроса получена и еще не отклонена сервером.
101 Протоколы коммутации
Это означает, что запрашивающая сторона попросила сервер переключить протоколы, и сервер подтверждает, что он это сделает.

2xx Успешно

200 ОК
Сервер успешно обработал запрос. Обычно это означает, что сервер предоставил запрошенную страницу.
201 Создано
Это означает, что запрос был успешным, и сервер создал новый ресурс.
202 Принято
Это означает, что сервер принял запрос на обработку, но обработка не была завершена.
203 Неавторизованная информация
Это означает, что сервер успешно обработал запрос, но возвращает информацию, которая может быть из другого источника.
204 Нет содержимого
Это означает, что сервер успешно обработал запрос, но не возвращает никакого содержимого.
204 Нет содержимого
Это означает, что сервер успешно обработал запрос, но не возвращает никакого содержимого.
205 Сбросить содержимое
Это означает, что сервер успешно обработал запрос, но не возвращает никакого содержимого. В отличие от ответа 204, этот ответ требует, чтобы запрашивающая сторона сбросила представление документа.
206 Частичное содержимое
Сервер доставляет только часть ресурса из-за заголовка диапазона, отправленного клиентом.

3xx Перенаправление

300 Множественный выбор
Указывает несколько вариантов ресурса, которым может следовать клиент.Его, например, можно использовать для представления различных вариантов формата видео или списка файлов с разными расширениями.
301 Перемещено на постоянной основе
Запрошенная страница окончательно перемещена в новое место. Когда сервер возвращает этот ответ, он автоматически перенаправляет запрашивающего в новое место.
302 Найдено
Это означает, что запрошенный ресурс временно находится в другом месте, но запрашивающая сторона должна продолжать использовать исходное расположение для будущих запросов.
303 См. Другие
Это означает, что ответ на запрос можно найти в другом месте с помощью метода GET.
304 Без изменений
Указывает, что запрошенный ресурс не изменялся с момента последнего запроса.
305 Использовать прокси
Это означает, что запрашивающая сторона может получить доступ к запрошенному ресурсу только через прокси.Многие HTTP-клиенты (например, Mozilla и Internet Explorer) неправильно обрабатывают ответы с этим кодом состояния, в первую очередь по соображениям безопасности.
306 Прокси-сервер коммутатора
Больше не используется.
307 Временное перенаправление
Это означает, что запрошенный ресурс временно находится в другом месте, но запрашивающая сторона должна продолжать использовать исходное расположение для будущих запросов.В отличие от 302, метод запроса не должен изменяться при повторной отправке исходного запроса. Например, запрос POST должен быть повторен с использованием другого запроса POST.
308 Постоянное перенаправление (экспериментальное)
Это означает, что запрос, и все будущие запросы должны повторяться с использованием другого URL. 307 и 308 (как предлагается) аналогичны поведению 302 и 301, но не позволяют изменять метод HTTP.

Ошибка клиента 4xx

400 неверный запрос
Это означает, что запрос не может быть выполнен из-за неправильного синтаксиса.
401 Неавторизованный
Запрос требует аутентификации пользователя. Сервер может вернуть этот ответ для страницы за логином.
402 Требуется оплата
Этот код зарезервирован для использования в будущем. Первоначально предполагалось, что этот код можно будет использовать как часть схемы цифровых денег или микроплатежей, но этого не произошло.
403 Запрещено
Запрос был действительным, но сервер отказывается отвечать на него.В отличие от ответа 401 Unauthorized, аутентификация не имеет значения.
404 Не найдено
Это означает, что сервер не может найти запрошенную страницу. Например, сервер часто возвращает этот код, если запрос относится к странице, которой нет на сервере.
405 Метод запрещен
Это означает, что указанный в запросе метод не разрешен. Например, использование GET в форме, которая требует, чтобы данные были представлены через POST.
406 Неприемлемо
Это означает, что запрошенный ресурс не может ответить запрошенными характеристиками содержимого.
407 Требуется аутентификация прокси
Этот код похож на 401 (Неавторизованный), но указывает, что клиент должен сначала аутентифицировать себя с помощью прокси.
408 Тайм-аут запроса
Истекло время ожидания сервера для запроса.Это означает, что клиент не отправил запрос в течение времени, которое сервер был подготовлен к ожиданию. Клиент МОЖЕТ повторить запрос без изменений в любое время.
409 Конфликт
Это означает, что запрос не может быть выполнен из-за конфликта с текущим состоянием ресурса.
410 Исчез
Указывает, что запрошенный ресурс больше не доступен на сервере и больше не будет доступен.
411 Требуемая длина
Это означает, что сервер отказывается принять запрос без определенной Content-Length.
412 Ошибка предварительного условия
Это означает, что сервер не соответствует одному из предварительных условий, которые запрашивающая сторона поставила для запроса.
413 Запрос слишком большой объект
Это означает, что сервер отказывается обрабатывать запрос, потому что он больше, чем сервер желает или может обработать.
414 Слишком длинный URI запроса
Это означает, что сервер отказывается обрабатывать запрос, потому что Request-URI (обычно URL) длиннее, чем сервер готов интерпретировать.
413 Запрос слишком большой объект
Это означает, что сервер отказывается обрабатывать запрос, потому что он больше, чем сервер желает или может обработать.
413 Запрос слишком большой объект
Это означает, что сервер отказывается обрабатывать запрос, потому что он больше, чем сервер желает или может обработать.
415 Неподдерживаемый тип носителя
Сервер отказывается обрабатывать запрос, потому что объект запроса находится в формате, который не поддерживается сервером или запрошенным ресурсом.
416 Запрошенный диапазон Не выполняется
Сервер возвращает этот код состояния, если запрос относится к диапазону, недоступному для выбранного ресурса.
417 Неудачное ожидание
Это означает, что сервер не может удовлетворить требованиям поля заголовка запроса Expect.

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

500 Внутренняя ошибка сервера
Это означает, что сервер обнаружил непредвиденное состояние, которое помешало ему обработать запрос.
501 Не реализовано
Это означает, что сервер либо не распознает метод запроса, либо не может обработать запрос.
502 Плохой шлюз
Это означает, что сервер, действуя как шлюз или прокси, получил недопустимый ответ от вышестоящего сервера, к которому он обращался при попытке выполнить запрос.
503 Служба недоступна
Это означает, что сервер в настоящее время не может обработать запрос, потому что он перегружен или отключен для обслуживания. Как правило, это временное состояние.
504 Тайм-аут шлюза
Это означает, что сервер, выступая в качестве шлюза или прокси, не получил своевременного ответа от вышестоящего сервера.
505 Версия HTTP не поддерживается
Это означает, что сервер не поддерживает или отказывается поддерживать версию протокола HTTP, используемую в запросе.

Что такое коды состояния HTTP и что они означают? — Центр поддержки Siteimprove

Успешные ответы
200 ОК Запрос выполнен успешно. Смысл успеха зависит от метода HTTP:

  • GET: ресурс был получен и передан в теле сообщения.
  • ЗАГОЛОВОК: Заголовки объекта находятся в теле сообщения.
  • POST: ресурс, описывающий результат действия, передается в теле сообщения.
  • TRACE: тело сообщения содержит сообщение запроса, полученное сервером
Сообщения перенаправления
300 Множественный выбор Запрос имеет несколько возможных ответов. Пользовательский агент или пользователь должен выбрать один из них. Не существует стандартного способа выбрать один из ответов.
301 Постоянно перемещен Этот код ответа означает, что URI запрошенного ресурса был изменен. Новый URI, вероятно, указан в ответе.
302 Найдено Этот код ответа означает, что URI запрошенного ресурса был временно изменен. В будущем могут быть внесены новые изменения в URI. Следовательно, этот же URI должен использоваться клиентом в будущих запросах.
303 См. Другие Сервер отправил этот ответ клиенту, направив его на получение запрошенного ресурса из другого URI с помощью запроса GET.
304 Без изменений Используется для кэширования, чтобы сообщить клиенту, что ответ не был изменен. Таким образом, клиент может продолжать использовать ту же кешированную версию ответа.
307 Временное перенаправление Сервер отправил этот ответ направляющему клиенту для получения запрошенного ресурса из другого URI тем же методом, который использовал предыдущий запрос.Он имеет ту же семантику, что и код ответа HTTP 302 Found, за исключением того, что пользовательский агент не должен изменять используемый метод HTTP: если POST использовался в первом запросе, POST должен использоваться во втором запросе.
308 Постоянное перенаправление Это означает, что ресурс теперь постоянно находится по другому URI, указанному в заголовке Location: HTTP Response. Он имеет ту же семантику, что и код ответа HTTP 301 Moved Permanently, за исключением того, что пользовательский агент не должен изменять используемый метод HTTP: если POST использовался в первом запросе, POST должен использоваться во втором запросе .
Ответы клиента на ошибку
400 Неверный запрос Этот ответ означает, что сервер не может понять запрос из-за недопустимого синтаксиса.
401 Неавторизованный Для получения запрошенного ответа требуется аутентификация. Это похоже на код ответа 403, но в этом случае возможна аутентификация.
403 Запрещено Клиент не имеет прав доступа к контенту, поэтому сервер не разрешает доступ к запрошенному ответу.
404 Не найдено

Сервер не может найти запрошенный ресурс. Этот код ответа хорошо известен из-за его частого появления.

Код состояния 404 считается неработающей ссылкой на платформе Siteimprove.

405 Метод запрещен Метод запроса известен серверу, но он отключен и не может использоваться. Два обязательных метода, GET и HEAD, никогда не должны отключаться и не должны возвращать этот код ошибки.
408 Тайм-аут запроса Этот ответ отправляется некоторыми серверами при незанятом соединении, даже без предварительного запроса клиента. Это означает, что сервер хочет закрыть это неиспользуемое соединение. Этот ответ используется гораздо чаще, поскольку некоторые браузеры, такие как Chrome или IE9, используют механизмы предварительного подключения HTTP для ускорения серфинга (см. Ошибку 881804, которая отслеживает будущую реализацию такого механизма в Firefox). Также обратите внимание, что некоторые серверы просто закрывают соединение, не отправляя это сообщение.
409 Конфликт

Запрос не может быть выполнен из-за конфликта с текущим состоянием ресурса. Этот код разрешен только в ситуациях, когда ожидается, что пользователь сможет разрешить конфликт и повторно отправить запрос. В теле ответа СЛЕДУЕТ включать достаточно информации, чтобы пользователь мог распознать источник конфликта. В идеале объект ответа должен включать достаточно информации для пользователя или пользовательского агента, чтобы исправить проблему; однако это может быть невозможно и не требуется.

Конфликты наиболее вероятны в ответ на запрос PUT. Например, если использовалось управление версиями и объект PUT включал изменения ресурса, которые противоречат изменениям, сделанным более ранним (сторонним) запросом, сервер может использовать ответ 409, чтобы указать, что он не может выполнить запрос. . В этом случае объект ответа, вероятно, будет содержать список различий между двумя версиями в формате, определенном Content-Type ответа.

410 ушел

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

Код состояния 410 считается неработающей ссылкой на платформе Siteimprove.

412 Ошибка предварительного условия Одно или несколько условий, указанных в полях заголовка запроса, при проверке на сервере признаны ложными. Этот код ответа позволяет клиенту помещать предварительные условия в текущее состояние ресурса (его текущие представления и метаданные) и, таким образом, предотвращать применение метода запроса, если целевой ресурс находится в неожиданном состоянии.
429 Слишком много запросов

Пользователь отправил слишком много запросов за заданный промежуток времени. Предназначен для использования со схемами ограничения скорости для управления скоростью отправляемого или принимаемого трафика для предотвращения DoS-атак.

Ответы на ошибку сервера
500 Внутренняя ошибка сервера Сервер столкнулся с ситуацией, которую не знает, как с ней справиться.
502 Плохой шлюз Этот ответ с ошибкой означает, что сервер, работая в качестве шлюза для получения ответа, необходимого для обработки запроса, получил недопустимый ответ.
503 Служба недоступна Сервер не готов обработать запрос. Распространенные причины — это сервер, который не работает на техническое обслуживание или перегружен. Обратите внимание, что вместе с этим ответом должна быть отправлена ​​удобная страница с объяснением проблемы.Этот ответ следует использовать для временных условий, а HTTP-заголовок Retry-After: по возможности должен содержать расчетное время до восстановления службы. Веб-мастер также должен позаботиться о заголовках, связанных с кешированием, которые отправляются вместе с этим ответом, поскольку эти временные ответы условий обычно не должны кэшироваться.
* Неофициальный код статуса HTTP
999

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

Это не официальный код статуса HTTP. Он используется как универсальный код ошибки, представляемый, когда более конкретный код ошибки не предоставляется сервером, к которому мы пытаемся получить доступ.
Мы наблюдаем такое поведение на сайтах социальных сетей, таких как LinkedIn, которые либо хотят полностью запретить поисковые роботы, либо ограничить количество сделанных запросов. Этот ответ может быть прерывистым, поскольку в некоторых случаях сервер блокирует IP-адрес искателя на ограниченный период времени.
В таких случаях мы рекомендуем повторно сканировать ссылку на более позднем этапе.Если проблема сохраняется со ссылкой, которая, как вы знаете, работает, вы можете отклонить эту конкретную ссылку в отчете о странице.
н / д

Недоступно

Это не официальный код статуса HTTP. Ссылка работает, но ресурс, на который она ссылается, больше не доступен, например видео.
н / д

Невозможно подключиться

Это не официальный код статуса HTTP. Вы можете получить эту ошибку, когда запрос был прерван, т.е.e, соединение было неожиданно закрыто. Вы также можете увидеть эту ошибку, если есть проблемы с обработкой TLS.

HTTP-сообщения


Сообщения об ошибках в формате HTML

Когда браузер запрашивает службу с веб-сервера, может произойти ошибка,
и сервер может вернуть код ошибки, например «404 Not Found».

Обычно эти ошибки называют сообщениями об ошибках HTML.

Но эти сообщения называются сообщениями статуса HTTP.
Фактически, сервер всегда возвращает сообщение для каждого запроса.Наиболее частое сообщение — 200 ОК.

Ниже приведен список сообщений о состоянии HTTP, которые могут быть возвращены:

1xx: Информация

Сообщение: Описание:
100 Продолжить Сервер получил заголовки запроса, и клиент должен продолжить отправку тела запроса
101 Протоколы коммутации Запрашивающая сторона попросила сервер переключить протоколы
103 КПП Используется в предложении возобновляемых запросов для возобновления прерванных запросов PUT или POST.

2xx: Успешно

Сообщение: Описание:
200 ОК Запрос в порядке (это стандартный ответ для успешных HTTP-запросов)
201 Создано Запрос выполнен, новый ресурс
созданный
202 Принято Запрос принят в обработку, но обработка
не был завершен
203 Неавторизованная информация Запрос был успешно обработан, но возвращает информацию, которая может быть из другого источника
204 Без содержания Запрос был успешно обработан, но не возвращает никакого содержания
205 Сбросить содержимое Запрос был успешно обработан, но не возвращает никакого содержимого и требует, чтобы запрашивающая сторона сбросила представление документа
206 Частичное содержимое Сервер доставляет только часть ресурса из-за заголовка диапазона, отправленного клиентом

3xx: перенаправление

Сообщение: Описание:
300 Множественный выбор Список ссылок.Пользователь может выбрать ссылку и перейти к ней.
место расположения. Максимум пять адресов
301 Постоянно перемещен Запрошенная страница перемещена на новый URL
302 Найдено Запрошенная страница временно перемещена на новый URL
303 См. Другие Запрошенную страницу можно найти по другому URL-адресу
304 Без изменений Указывает, что запрошенная страница не была изменена с момента последнего запроса
306 Прокси-сервер коммутатора Больше не используется
307 Временное перенаправление Запрошенная страница временно перемещена на новый URL
308 Неполное резюме Используется в предложении возобновляемых запросов для возобновления прерванных запросов PUT или POST.


4xx: ошибка клиента

Сообщение: Описание:
400 Неверный запрос Запрос не может быть выполнен из-за неправильного синтаксиса
401 Неавторизованный Запрос был законным, но сервер отказывается отвечать на него.Для использования, когда аутентификация возможна, но не удалась или еще не была предоставлена ​​
402 Требуется оплата Зарезервировано для использования в будущем
403 Запрещено Запрос был законным, но сервер отказывается отвечать на него
404 Не найдено Запрошенная страница не может быть найдена, но может быть снова доступна в будущем
405 Метод запрещен Был сделан запрос страницы с использованием метода запроса, не поддерживаемого этой страницей
406 Неприемлемо Сервер может генерировать только ответ, который не
принят клиентом
407 Требуется проверка подлинности прокси Клиент должен сначала аутентифицироваться через прокси.
408 Тайм-аут запроса Время ожидания сервера истекло.
409 Конфликт Запрос не может быть выполнен из-за конфликта
в заявке
410 Исчез Запрошенная страница больше не доступна
411 Требуемая длина «Длина содержимого» не определена.Сервер
не примет запрос без него
412 Не выполнено предварительное условие Предварительное условие, указанное в запросе, оценивается как ложное с помощью
сервер
413 Слишком большой объект запроса Сервер не примет запрос, поскольку объект запроса
слишком большой
414 Слишком длинный URI запроса Сервер не примет запрос, потому что URL-адрес
слишком долго.Происходит при преобразовании запроса POST в запрос GET с помощью
длинный запрос информации
415 Неподдерживаемый тип носителя Сервер не примет запрос, потому что медиа
тип не поддерживается
416 Запрошенный диапазон Не выполняется Клиент запросил часть файла, но сервер не может предоставить эту часть
417 Неудачное ожидание Сервер не может удовлетворить требованиям поля заголовка запроса Expect

5xx: ошибка сервера

Сообщение: Описание:
500 Внутренняя ошибка сервера Общее сообщение об ошибке, выдается, когда более конкретное сообщение не подходит
501 Не реализовано Сервер либо не распознает метод запроса, либо не может выполнить запрос
502 Плохой шлюз Сервер действовал как шлюз или прокси и получил недопустимый ответ от вышестоящего сервера
503 Служба недоступна Сервер в настоящее время недоступен (перегружен или не работает)
504 Тайм-аут шлюза Сервер действовал как шлюз или прокси и не получил своевременного ответа от вышестоящего сервера
505 Версия HTTP не поддерживается Сервер не поддерживает версию протокола HTTP, используемую в запросе.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *