Содержание
10 наиболее распространенных кодов статуса HTTP
Как типичный пользователь Интернета, нет ничего более разочаровывает, чем ждать веб-страницы для отображения, только чтобы получить “Страница не найдено” 404 код статуса ошибки. Конечно, мы стараемся перезагрузить страницу, и иногда, что получает gremlins начать работать, но в большинстве случаев, этот вопрос находится вне наших рук. Для всех нас типичных пользователей, мы либо перейти на следующую вещь или найти другой сайт. Там очень много происходит в фоновом режиме, что большинство из нас совершенно не знают. Тем не менее, для веб-разработчиков, ОШИБКи кода статуса HTTP может быть совершенно раздражает.
По данным Целевой группы интернет-инженерии (IEFT), организации, которая разрабатывает и продвигает интернет-стандарты, существует более 60 различных кодов статуса HTTP. Коды статуса HTTP классифицируются на следующие пять групп:
- 1xx Информационный ответ. Запрос получен и понятен. Обработка запросов продолжается.
- 2xx Успех. Акция была успешно принята, понята и принята.
- 3xx Перенаправление. Для выполнения запроса клиент должен принять дальнейшие меры.
- 4xx Ошибки клиента. Ошибка можно было вызвать клиентом. Запрос содержит плохой синтаксис или не может быть выполнен.
- 5xx Ошибки сервера. Сервер столкнулся с ошибкой и не выполнил запрос.
Важно отметить, что не все из этих кодов статуса считаются “ошибками”, некоторые из них являются просто информацией или ответами на действия и не требуют устранения неполадок или исправления. Вот 10 наиболее распространенных HTTP статус кода и что они означают. Смотрите вики Dotcom-Monitor для полного списка кодов статуса HTTP.
Общие коды статуса HTTP
- Статус-код 200 — это стандартный код статуса «OK» для успешного запроса HTTP. Ответ, который возвращается, зависит от запроса. Например, для запроса GET ответ будет включен в тело сообщения. Для запроса PUT/POST ответ будет включать ресурс, содержащий результат действия.
- Статус-код 201 — это код статуса, который подтверждает, что запрос был успешным и, как следствие, был создан новый ресурс. Как правило, это код статуса, который отправляется после запроса POST/PUT.
- Статус-код 204 – Этот код статуса подтверждает, что сервер выполнил запрос, но не нуждается в возврате информации. Примеры этого кода статуса включают запросы на удаление или если запрос был отправлен через форму, и ответ не должен вызывать обновление формы или загрузку новой страницы.
- Статус-код 304 — код состояния, используемый для кэширования браузера. Если ответ не был изменен, клиент/пользователь может продолжать использовать ту же версию ответа/кэша. Например, браузер может запросить, если ресурс был изменен с определенного времени. Если это не так, отправляется код статуса 304. Если он был изменен, отправляется код состояния 200 вместе с ресурсом.
- Код статуса 400 – Сервер не может понять и обработать запрос из-за ошибки клиента. Отсутствующие данные, проверка домена и недействительное форматирование являются примерами, которые приводят к отправке кода состояния 400.
- Код статуса 401 – Этот запрос кода статуса возникает, когда требуется проверка подлинности, но она не была предоставлена или не была предоставлена.
- Статус-код 403 – Очень похож на код статуса 401, код статуса 403 происходит, когда действительный запрос был отправлен, но сервер отказывается принять его. Это происходит, если клиенту/пользователю требуется необходимое разрешение или ему может понадобиться учетная запись для доступа к ресурсу. В отличие от кода статуса 401, аутентификация здесь не применяется.
- Статус-код 404 — наиболее распространенный статусный код, который увидит средний пользователь. Код состояния 404 возникает, когда запрос действителен, но ресурс не может быть найден на сервере. Несмотря на то, что они сгруппированы в “ведро” клиентских ошибок, они часто из-за неправильного перенаправления URL.
- Статус-код 409 — код статуса 409 отправляется при конфликте запроса с текущим состоянием ресурса. Обычно это проблема с одновременными обновлениями или версиями, которые противоречат друг другу.
- Код статуса 410 – Запрошенный ресурс больше недоступен и не будет доступен снова. Узнайте об ошибке сети 410.
- Статус код 500 – Еще один из наиболее часто видели коды статуса пользователями, 500 серий коды похожи на 400 кодов серии в том, что они являются истинными кодами ошибок. Код состояния 500 происходит, когда сервер не может выполнить запрос из-за неожиданной проблемы. Веб-разработчикам обычно приходится прочесывать журналы серверов, чтобы определить, откуда исходит точная проблема.
Мониторинг производительности веб-сервера HTTP/S
Проблемы могут произойти в любое время. Свести к минимуму время простоя и разочарование клиентов с помощью платформы мониторинга Dotcom-Monitor. Мониторинг веб-серверов HTTP/S проверяет наличие, производительность, содержимое, сломанные ссылки и многое другое. При поддержке файлов cookie, представлений форм, пользовательских заголовников, защищенных паролем сайтов и пороговых значений тайм-аута вы не застигнуты врасплох. Настройка пользовательских оповещений и фильтров для мгновенного обнаружения и устранения проблем веб-сервера, гарантируя, что ваши веб-страницы всегда доступны для пользователей со всего мира.
Поделиться в facebook
Поделиться в twitter
Поделиться в print
Мумбаи (Индия) Проблема с местоположением мониторинга
7 октября, 2022
Местоположение Dotcom-Monitor в Мумбаи (Индия) недоступно для мониторинга из-за проблем с интернет-провайдером. Мы работаем с провайдером для разрешения. Мы предоставим обновление, как только оно станет
Читать чаще 〉
Мумбаи (Индия) Место мониторинга – Проблема решена
7 октября, 2022
Местоположение Dotcom-Monitor в Далласе Мумбаи (Индия) доступно для мониторинга.
Читать чаще 〉
Мумбаи (Индия) Проблема с местоположением мониторинга
7 октября, 2022
Местоположение Dotcom-Monitor в Мумбаи (Индия) недоступно для мониторинга из-за проблем с сетью. Мы работаем с провайдером для разрешения. Мы предоставим обновление, как только оно станет
Читать чаще 〉
Блог Категории:
Самые популярные:
Мумбаи (Индия) Проблема с местоположением мониторинга
Читать чаще 〉
Мумбаи (Индия) Место мониторинга – Проблема решена
Читать чаще 〉
Мумбаи (Индия) Проблема с местоположением мониторинга
Читать чаще 〉
Мониторинг местоположений обслуживания 10/03/2022 – 10/07/2022 (Нью-Йорк, Париж, Сан-Франциско, Майами, Йоханнесбург)
Читать чаще 〉
Даллас (Техас, США) Местоположение мониторинга – Проблема решена
Читать чаще 〉
Руководство по HTTP.
Коды статусов. – PROSELYTE
Код статуса представляет собой ответ сервера, который состоит из трёх цифр. Первая определяет класс ответа, а две другие указывают конкретный ответ.
Существует пять основных категорий кодов статусов. Все они приведены ниже:
№ | Код и описание |
---|---|
1 | 1xx: Информационное Означает, что запрос был успешно получен и идёт его обработка. |
2 | 2xx: Успешное выполнение Запрос был успешно получен, понят и принят. |
3 | 3xx: Перенаправление Последующие действия должны быть предприняты для выполнения запроса. |
4 | 4xx: Ошибка на стороне клиент Запрос содержит синтаксическую ошибку, либо не корректен. |
5 | 5xx: Ошибка на стороне сервера Сервер не может выполнить обработать корректный запрос. |
Коды статусов расширяемы и HTTP приложение не должно понимать значение всех кодов.
Ниже приведены наиболее распространённые код статусов по категориям.
1ХХ: Информационные
Сообщение | Описание |
---|---|
100 Continue | Только часть запроса была получена сервером, но на данный момент запрос не был отклонён. Клиент должен продолжать запрос. |
101 Switching Protocols | Сервер выбирает протокол. |
2ХХ: Успешное выполнение
Сообщение | Описание |
---|---|
200 OK | Запрос успешен |
201 Created | Запрос выполнен, новый ресурс создан. |
202 Accepted | Запрос принят, но обработка не завершена. |
203 Non-authoritative Information | Информация в заголовке получена из локальной или сторонней копии, а не от оригинального сервера. |
204 No Content | Код статуса и заголовок переданы в ответе, но данные отсутствуют. |
205 Reset Content | Браузер должен очистить форму для этой транзакции для дополнительного ввода. |
206 Partial Content | Сервер возвращает часть данных. Используется для ответа на запрос, содержащий заголовок Content-Range. |
3ХХ: Перенаправление
Сообщение | Описание |
---|---|
300 Multiple Choices | Список ссылок. Пользователь может выбрать ссылку и перейти к локации. Максимальное количество ссылок – 5. |
301 Moved Permanently | Запрашиваемая страница была перенесена на новую URL. |
302 Found | Запрашиваемая страница была временно перенесена на новую URL. |
303 See Other | Запрашиваемая страница может быть найдена по другой URL. |
304 Not Modified | Код ответа для заголовка If-Modifier-Since или If-None-Match, где URL не была изменена с крайней даты обновления. |
305 Use Proxy | Доступ к запрашиваемой странице должен быть запрошен через прокси, который указан в заголовке Location. |
306 Unused | Данный код использовался в предыдущей версии, но на данный момент он не используется, а сам код был зарезервирован. |
307 Temporary Redirect | Запрашиваемая страница была временно перенесена на новую URL. |
4ХХ: Ошибка на стороне клиента
Сообщение | Описание |
---|---|
400 Bad Request | Сервер не понял запрос. |
401 Unauthorized | Запрашиваемая страница требует имя пользователя и пароль. |
402 Payment Required | На данный момент клиент не может использовать данный код. |
403 Forbidden | Доступ к запрашиваемой странице запрещён. |
404 Not Found | Сервер не может найти запрашиваемую страницу. |
405 Method Not Allowed | Метод, указанный в запросе, является недопустимым. |
406 Not Acceptable | Сервер генерирует ответ, который не может быть принят клиентом. |
407 Proxy Authentication Required | Клиент должен авторизоваться с помощью прокси-сервера прежде чем запрос сможет быть обработан. |
408 Request Timeout | Запрос длился дольше, чем сервер был готов ждать. |
409 Conflict | Запрос не может быть завершён из-за конфликта. |
410 Gone | Запрашиваемая страница больше недоступна. |
411 Length Required | Элемент “Content-Length” не определён. Сервер не может принять запрос без данного элемента. |
412 Precondition Failed | Сервер признал предусловия запроса ошибочными. |
413 Request Entity Too Large | Сервер не примет данный запрос, так как тело запроса слишком большое. |
414 Request-url Too Long | Сервер не примет данный запроса, так как URL слишком большая (длинная). |
415 Unsupported Media Type | Север не примет данный запрос, так как данный тип медиа файла не поддерживается. |
416 Requested Range Not Satisfiable | Запрашиваемый диапазон байтов недоступен и находится за пределами диапазона. |
417 Expectation Failed | Ожидания, переданные в заголовке запроса не могут быть удовлетворены данным сервером. |
5ХХ: Ошибка на стороне сервера
Сообщение | Описание |
---|---|
500 Internal Server Error | Запрос не выполнен. Сервер попал в непредвиденные условия. |
501 Not Implemented | Запрос не выполнен. Сервер не поддерживает запрашиваемый функционал. |
502 Bad Gateway | Запрос не выполнен. Сервер получил недоступный запрос от следующего сервера. |
503 Service Unavailable | Запрос не выполнен. На данный момент сервер перегружается, или не работает. |
504 Gateway Timeout | Соединение закрыто по времени. |
505 HTTP Version Not Supported | Сервер не поддерживает данную версию протокола HTTP. |
На этом мы заканчиваем изучение код статуса протокола HTTP.
В следующей статье мы рассмотрим поля заголовка (header fields).
Объяснение каждого важного кода состояния HTTP
Просто пользуясь Интернетом, вы, вероятно, сталкивались с некоторыми кодами состояния HTTP, такими как код состояния 404, но это лишь малая часть возможностей. Существует более 50 уникальных кодов состояния HTTP в пяти различных категориях. К счастью, вам не нужно знать все это или даже большинство из них. В этой статье я расскажу, что представляет собой каждый из пяти разделов, а также самые важные коды состояния из каждого из этих разделов. С помощью этой информации вы можете уверенно создавать надежные API, которые возвращают правильный код состояния HTTP, что упростит использование вашего API.
Если вы предпочитаете учиться визуально, посмотрите видеоверсию этой статьи.
Кроме того, если вам нужен полный список всех кодов состояния HTTP с пояснениями (включая те, которых нет в этой статье), я настоятельно рекомендую проверить страницу кодов состояния HTTP на MDN.
Первый уровень кодов состояния — это уровень 100, и, к счастью, ни один из этих кодов не является настолько распространенным или важным для понимания. В этом разделе всего несколько кодов, и ни один из них не применим к обычной веб-разработке/разработке API, поэтому мы можем пропустить весь этот раздел.
200-уровневые коды состояния, с другой стороны, являются наиболее часто используемыми кодами состояния, но, к счастью, вам нужно знать лишь некоторые из них. Эти коды состояния используются для представления успешных ответов и должны возвращаться каждый раз, когда запрос был успешным.
200 — OK
Первый код состояния — 200, это просто общий статус успеха. Все это говорит о том, что все, что пытался сделать запрос, было успешным, но больше информации он не дает. Из-за этого статус 200 — это резервный статус, который вы должны использовать для любого успешного запроса, когда нет более конкретного кода, который можно было бы использовать вместо этого.
201 — Created
Говоря о более конкретных кодах, у нас есть код 201. Это код успеха, который говорит, что ресурс был успешно создан. Чаще всего вы увидите это как результат запроса POST, поскольку большинство запросов POST используются для создания вещей. Например, если у вас есть маршрут API для создания новой записи в вашей БД, вы должны вернуть 201, если эта запись была успешно создана.
202 — Принято
Код состояния 202 немного нишев, но достаточно полезен, поэтому я решил включить его. По сути, этот код просто означает, что ответ был успешно получен, но фактическое действие запроса (создание ресурса, обновление данных и т. д.) еще не завершено. Это обычно используется, когда выполнение определенной задачи выполняется очень медленно, поэтому она ставится в очередь, чтобы выполнить ее позже. Например, если вам нужно создать большой отчет, который вы позже отправите пользователю по электронной почте, вы можете вернуть 202, чтобы сообщить клиенту, что вы обрабатываете запрос, но еще не закончили его.
204 — Нет содержимого
Другой специфический код — это код 204, который означает, что запрос был выполнен успешно, но данных для возврата нет. Это очень часто встречается с запросами DELETE, поскольку обычно нет данных, которые можно было бы вернуть в качестве ответа на удаление чего-либо. Самый большой ключ к этому коду состояния заключается в том, что он не может содержать никаких данных в теле.
Коды статуса 300 уровня касаются перенаправления. Например, если страница была перемещена в новое место или вы хотите перенаправить пользователя к некоторым кэшированным данным, вы должны использовать один из многих кодов состояния уровня 300.
301 — Перемещено навсегда
Вероятно, наиболее распространенным типом кода состояния уровня 300 является 301. Это просто говорит о том, что страница с определенным URL-адресом была окончательно перемещена на новый URL-адрес. Этот новый URL должен быть отправлен в ответ с кодом 301. Если это произойдет, браузер автоматически перенаправит пользователей на новый URL-адрес. Это также заставит поисковые системы связать все данные из старого URL-адреса с новым URL-адресом, поэтому вы не должны терять рейтинг в поисковой системе, делая это.
302 — Found
Подобно статусу 301, этот статус используется, чтобы сообщить клиенту, что страница находится по новому URL-адресу, но это временное изменение. Это означает, что поисковые системы не заменят старый URL-адрес новым URL-адресом. Это полезно, если вам нужно отправить пользователя на другую версию той же страницы, но вы не хотите, чтобы эта версия страницы заменяла вашу основную версию в поисковых системах. Например, если вы проводите A/B-тестирование, вы должны 302 перенаправить половину ваших пользователей на альтернативную версию сайта. Это также полезно для таких вещей, как локализация, когда вы можете захотеть перенаправить пользователей на локализованные версии вашего сайта в зависимости от того, откуда они.
304 — Не изменено
Последний важный код состояния уровня 300 — 304. Он используется для кэширования и, по сути, просто говорит о том, что запрашиваемый ресурс не изменился. Это необходимо использовать в сочетании с предыдущим запросом состояния 200, который включал заголовки кэширования, такие как Cache-Control
и Expires
. Когда клиент пытается получить доступ к ресурсу до истечения периода кэширования, сервер вернет 304, чтобы предотвратить повторную передачу всех данных клиенту.
Теперь мы, наконец, добрались до самого большого раздела кодов состояния. Коды состояния уровня 400 представляют любую ошибку, возникшую из-за ввода данных клиентом. Например, если клиент отправляет на сервер неверные или неполные данные.
400 — Неверный запрос
Подобно коду состояния 200, код состояния 400 представляет общий неверный запрос. Это просто означает, что данные, отправляемые в запрос (параметры URL, JSON и т. д.), неверны, искажены, отсутствуют или каким-то образом непригодны для использования сервером. Это сообщение о состоянии по умолчанию, которое отправляется обратно, когда у вас есть запрос, который не может быть обработан из-за клиента. Например, если вы попытаетесь отправить запрос на создание нового пользователя, но не передадите имя, сервер отправит код состояния 400, чтобы вы знали, что поле имени является обязательным.
401 — Неавторизованный
Код состояния 401 немного сбивает с толку, поскольку, хотя он использует слово неавторизованный (что означает, что у вас нет разрешения), этот код состояния на самом деле означает, что вы не прошли аутентификацию. Основное отличие здесь заключается в том, что отсутствие аутентификации означает, что вы не вошли в систему или не пытались войти с недействительными учетными данными. Это может произойти, если вы передаете неверный ключ API или вообще не передаете ключ API при работе с API.
403 — Запрещено
При работе с разрешениями следует использовать код состояния 403. Этот статус информирует клиента о том, что у него нет разрешения на выполнение этого запроса. Это должно быть возвращено только в том случае, если клиент отправляет действительные учетные данные (например, действительный ключ API), но не имеет разрешений для выполнения действия. Например, если обычный пользователь пытается получить доступ к данным администратора, вы вернете 403.
404 — Not Found
Это наиболее распространенный код состояния HTTP, о котором знают люди, и он просто означает, что ресурс не может быть найден. Это можно использовать, например, если вы пытаетесь получить доступ к несуществующему URL-адресу или если вы пытаетесь получить доступ к чему-то из несуществующей базы данных.
429 — слишком много запросов
Последний важный код состояния уровня 400 — 429. Этот код используется при работе с ограничением скорости. Например, если вы разрешаете пользователям обращаться к вашему API только 30 раз в минуту, а кто-то пытается получить к нему доступ 31 раз, вы вернете ошибку 429. код состояния, чтобы сообщить им, что им нужно подождать, чтобы отправить свой следующий запрос. Это также должно иметь HTTP-заголовок Retry-After
с количеством времени ожидания, прежде чем запросы будут приняты API.
Последний уровень кодов состояния — это уровень 500, и он очень похож на уровень 400, но коды уровня 500 относятся к ошибкам на сервере, а не на клиенте.
500 — Внутренняя ошибка сервера
На сегодняшний день наиболее распространенным кодом уровня 500 является 500. Этот код просто информирует клиента о том, что на сервере произошла какая-то ошибка. Эта ошибка может быть вызвана чем угодно: от ошибки в коде, приводящей к сбою программы (даже если эта ошибка вызвана неправильными данными клиента), до проблем с доступом к базе данных. Это следует использовать в любой ситуации, когда на сервере возникла ошибка и нет более конкретного применимого кода.
503 — Служба недоступна
Существует не так уж много других кодов состояния уровня 500, которые вы будете использовать, но 503 довольно распространен. Этот код состояния просто означает, что сервер не может обработать запрос. Это обычно используется при плановом обслуживании сервера, когда сервер не работает во время обновления. Это также должно включать HTTP-заголовок Retry-After
с предполагаемым временем до резервного копирования сервера.
Заключение
Может быть более 50 кодов состояния HTTP, но лишь немногие из них вам действительно нужно понять. Если вы знаете эти коды состояния, вы можете создать надежный API, который будет легко использовать.
Коды состояния HTTP для начинающих
HTTP, протокол передачи гипертекста — это метод, с помощью которого клиенты (то есть вы) и серверы обмениваются данными. Когда кто-то щелкает ссылку, вводит URL-адрес или отправляет форму, его браузер отправляет запрос на сервер для получения информации. Это может быть запрос страницы или отправка данных, но в любом случае это называется HTTP-запросом. Когда сервер получает этот запрос, он отправляет ответ HTTP с информацией для клиента. Обычно это незаметно, хотя я уверен, что вы видели один из очень распространенных кодов ответа — 404, указывающий, что страница не найдена. Есть еще несколько кодов состояния, отправляемых серверами, и ниже приведен список текущих кодов в HTTP 1.1 вместе с объяснением их значений.
Более подробная техническая разбивка кодов состояния HTTP 1.1 и их значений доступна по адресу http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html. Существует несколько версий HTTP, но в настоящее время наиболее широко используется HTTP 1.1.
Информационное
- 100 — Продолжить
Код состояния 100 указывает, что (обычно первая) часть запроса была получена без каких-либо проблем, и теперь следует отправить остальную часть запроса. - 101 — Переключение протоколов
HTTP 1.1 — это всего лишь один тип протокола для передачи данных в Интернете, и код состояния 101 указывает, что сервер переходит на протокол, который он определяет в заголовке «Обновление», который он возвращает клиенту. . Например, при запросе страницы браузер может получить код состояния 101, за которым следует заголовок «Обновить», показывающий, что сервер переходит на другую версию HTTP.
Успешно
- 200 — OK
Код состояния 200, безусловно, чаще всего возвращается. Это просто означает, что запрос получен, понят и обрабатывается. - 201 — Created
Код состояния 201 указывает на то, что запрос был выполнен успешно и в результате был создан ресурс (например, новая страница). - 202 — Принято
Код состояния 202 указывает, что сервер получил и понял запрос, и что он принят для обработки, хотя он может быть обработан не сразу. - 203 — Неавторизованная информация
Код состояния 203 означает, что запрос был получен и понят, а информация об ответе отправлена третьей стороной, а не исходным сервером. Это практически идентично по смыслу коду состояния 200. - 204 — Нет содержимого
Код состояния 204 означает, что запрос получен и понят, но нет необходимости отправлять какие-либо данные обратно. - 205 — Сбросить содержимое
Код состояния 205 — это запрос сервера к клиенту на сброс документа, из которого был отправлен первоначальный запрос. Например, если пользователь заполняет форму и отправляет ее, код состояния 205 означает, что сервер просит браузер очистить форму. - 206 — Частичное содержимое
Код состояния 206 — это ответ на запрос части документа. Это используется расширенными инструментами кэширования, когда пользовательский агент запрашивает только небольшую часть страницы, и возвращается только этот раздел.
Перенаправление
- 300 — Множественный выбор
Код состояния 300 указывает на перемещение ресурса. Ответ также будет включать в себя список местоположений, из которых пользовательский агент может выбрать наиболее подходящее. - 301 — Перемещено навсегда
Код состояния 301 сообщает клиенту, что запрошенный им ресурс навсегда перемещен в новое место. Ответ также должен включать это местоположение. Он говорит клиенту использовать новый URL-адрес в следующий раз, когда он захочет получить тот же ресурс. - 302 — Found
Код состояния 302 сообщает клиенту, что запрошенный им ресурс временно перемещен в новое место. Ответ также должен включать это местоположение. Он сообщает клиенту, что он должен продолжать использовать тот же URL-адрес для доступа к этому ресурсу. - 303 — См. Другое
Код состояния 303 указывает, что ответ на запрос можно найти по указанному URL-адресу и его следует получить оттуда. Это не значит, что что-то переехало — это просто указание адреса, по которому можно найти ответ на запрос. - 304 — Не изменено
Код состояния 304 отправляется в ответ на запрос (для документа), который запрашивал документ, только если он был новее, чем тот, который уже был у клиента. Обычно при кэшировании документа сохраняется дата его кэширования. При следующем просмотре документа клиент спрашивает сервер, изменился ли документ. Если нет, клиент просто перезагружает документ из кеша. - 305 — Использовать прокси
Код состояния 305 сообщает клиенту, что запрошенный ресурс должен быть доступен через прокси, который будет указан в ответе. - 307 — временное перенаправление
307 — это код состояния, который отправляется, когда документ временно доступен по другому URL-адресу, который также возвращается. Между кодом состояния 302 и кодом состояния 307 очень небольшая разница. 307 был создан как другая, менее двусмысленная версия кода состояния 302.
Ошибка клиента
- 400 — Неверный запрос
Код состояния 400 означает, что сервер не понял запрос из-за неправильного синтаксиса. - 401 — Неавторизованный
Код состояния 401 указывает, что перед доступом к ресурсу клиент должен быть авторизован сервером. - 402 — Требуется оплата
Код состояния 402 в настоящее время не используется, он указан как «зарезервированный для использования в будущем». - 403 — Запрещено
Код состояния 403 указывает, что клиент не может получить доступ к запрошенному ресурсу. Это может означать, что в запросе были отправлены неправильные имя пользователя и пароль, или что разрешения на сервере не разрешают запрашиваемое. - 404 — Не найдено
Самый известный из них, код состояния 404 указывает на то, что запрошенный ресурс не был найден по указанному URL-адресу, и сервер не знает, как долго. - 405 — Метод не разрешен
Код состояния 405 возвращается, когда клиент пытается использовать метод запроса, который не разрешен сервером. Разрешенные методы запроса должны быть отправлены вместе с ответом (распространенными методами запроса являются POST и GET). - 406 — Not Acceptable
Код состояния 406 означает, что хотя сервер понял и обработал запрос, ответ имеет форму, непонятную клиенту. Клиент отправляет в составе запроса заголовки, указывающие, какие типы данных он может использовать, и возвращается ошибка 406, когда тип ответа не входит в этот список. - 407 — Требуется аутентификация прокси-сервера
Код состояния 407 очень похож на код состояния 401 и означает, что клиент должен быть авторизован прокси-сервером, прежде чем запрос сможет быть обработан. - 408 — Время ожидания запроса
Код состояния 408 означает, что клиент недостаточно быстро выдал запрос. Сервер настроен на ожидание ответов от клиентов только определенное время, а код состояния 408 указывает, что время прошло. - 409 — Конфликт
Код состояния 409 указывает на то, что серверу не удалось выполнить запрос, часто из-за необходимости редактирования, создания или удаления файла, который невозможно отредактировать, создать или удалить. - 410 — Gone
Код состояния 410 является менее известным двоюродным братом 404. Это указывает на то, что ресурс исчез навсегда (код состояния 404 не указывает, был ли ресурс удален навсегда или временно), и для него не известен новый адрес. - 411 — Требуемая длина
Код состояния 411 возникает, когда сервер отказывается обрабатывать запрос, поскольку длина содержимого не указана. - 412 — Precondition Failed
Код состояния 412 указывает, что одно из условий, при которых был сделан запрос, не выполнено. - 413 — объект запроса слишком велик
Код состояния 413 указывает на то, что запрос был больше, чем сервер может обработать, либо из-за физических ограничений, либо из-за настроек. Обычно это происходит, когда файл отправляется методом POST из формы, а файл больше максимального размера, разрешенного в настройках сервера. - 414 — Request-URI Too Long
Код состояния 414 указывает на то, что URL-адрес, запрошенный клиентом, был длиннее, чем он может обработать. - 415 — Неподдерживаемый тип носителя
Сервер возвращает код состояния 415, чтобы указать, что часть запроса была в неподдерживаемом формате. - 416 — Запрошенный диапазон не удовлетворяется
Код состояния 416 указывает, что сервер не смог выполнить запрос. Это может быть, например, потому, что клиент запросил 800-900-й байт документа, а документ был всего 200 байт. - 417 — Ожидание не выполнено
Код состояния 417 означает, что сервер не смог правильно выполнить запрос. Один из заголовков, отправленных на сервер, заголовок «Ожидание», указывал на ожидание, которое сервер не смог оправдать.
Ошибка сервера
- 500 — Внутренняя ошибка сервера
Код состояния 500 (слишком часто наблюдаемый Perl-программистами) указывает, что сервер столкнулся с чем-то неожиданным и не смог выполнить запрос. - 501 — Не реализовано
Код состояния 501 указывает на то, что сервер не поддерживает все необходимое для выполнения запроса.