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

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

0

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

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

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

  • Что такое коды состояния HTTP?
  • Классы кодов статуса HTTP
  • Список кодов состояния HTTP

Откуда они? Куда они идут?

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

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

Google 404 HTTP коды состояния

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

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

Классы — HTTP коды состояния

Список кодов состояния HTTP делится на 5 классов:

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

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

Список кодов состояния HTTP

Существует более 40 различных кодов состояния сервера . Тем не менее, на самом деле есть меньше десятка, с которыми вы будете сталкиваться на регулярной основе. Если у вас есть веб-сайт, хорошо разберитесь с этими кодами, и вы поймете, с чем вы сталкиваетесь в подавляющем большинстве случаев. Проверьте список кодов состояния HTTP ниже:

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

  • 200: «Everything is OK.». Это код, который доставляется, когда веб-страница или ресурс работает именно так, как ожидается.

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

  • 301: «The requested resource has been moved permanentl ». Этот код доставляется, когда веб-страница или ресурс заменены другим ресурсом. Используется для постоянного перенаправления URL .
  • 302: «The requested resource has moved, but was found». Этот код используется для указания того, что запрошенный ресурс был найден, но не в том месте, где он ожидался. Используется для временного перенаправления URL.
  • 304: «The requested resource has not been modified since the last time you accessed it». Этот код сообщает браузеру, что ресурсы, хранящиеся в кэше браузера, не изменились. Он используется для ускорения доставки веб-страниц путем повторного использования ранее загруженных ресурсов.

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

  • 401: «Unauthorized» или «Authorization Required». Возвращается сервером, если у целевого ресурса отсутствуют действительные учетные данные для аутентификации. Вы можете увидеть это, если вы настроили базовую HTTP-аутентификацию с помощью htpasswd .
Требуется авторизация Nginx 401 в Chrome
  • 403: «Access to that resource is forbidden». Этот код возвращается, когда пользователь пытается получить доступ к тому, на что у него нет разрешения. Например, попытка просмотра содержимого, защищенного паролем, без входа в систему может привести к ошибке 403 .
  • 404: «Запрашиваемый ресурс не найден» . Наиболее распространенное сообщение об ошибке из всех них. Этот код означает, что запрошенный ресурс не существует и что сервер не знает, существовал ли он когда-либо.
  • 405: «Method not allowed» .  Это генерируется, когда хост-сервер (исходный сервер) поддерживает полученный метод, а целевой ресурс — нет.
  • 406: «Not acceptable response» . Запрашиваемый ресурс способен генерировать только контент, неприемлемый в соответствии с заголовками Accept, отправленными в запросе.
  • 408: «The server timed out waiting for the rest of the request from the browser». Этот код генерируется, когда тайм-аут сервера во время ожидания полного запроса от браузера. Другими словами, сервер не получил полный запрос, отправленный браузером. Одной из возможных причин может быть перегрузка сети, приводящая к потере пакетов данных между браузером и сервером.
  • 410: «The requested resource is gone and won’t be coming back». Аналогично коду 404 «non found», за исключением того, что 410 указывает, что условие является ожидаемым и постоянным.
  • 429: «Too many requests». Генерируется сервером, когда пользователь отправил слишком много запросов за определенный промежуток времени (ограничение скорости). Иногда это может происходить от ботов или скриптов, пытающихся получить доступ к вашему сайту.
429 слишком много запросов
  • 499: «Client closed request».  Возвращается, когда клиент закрывает запрос, пока NGINX все еще обрабатывает его.

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

  • 500: « There was an error on the server and the request could not be completed » . Общий код, который просто означает «внутренняя ошибка сервера». На сервере что-то пошло не так, и запрошенный ресурс не был доставлен. Этот код обычно генерируется сторонними плагинами, неисправным PHP или даже разрывом соединения с базой данных.
  • 501: « Not Implemented ».  Эта ошибка означает, что сервер не поддерживает функции, необходимые для выполнения запроса. Это почти всегда проблема на самом веб-сервере и обычно должна решаться хостом. Ознакомьтесь с нашими рекомендациями о том, как устранить ошибку 501.
  • 502: «Bad Gateway».  Этот код ошибки обычно означает, что один сервер получил неверный ответ от другого. Иногда запрос или запрос может занять слишком много времени, поэтому он отменяется или уничтожается сервером, и соединение с базой данных разрывается. Ознакомьтесь с нашим подробным руководством о том, как исправить ошибку 502 Bad Gateway .
  • 503: « The server is unavailable to handle this request right now » . Запрос не может быть завершен прямо сейчас. Этот код может быть возвращен перегруженным сервером, который не может обработать дополнительные запросы. Ознакомьтесь с нашим подробным руководством по устранению ошибки 503 Service Unavailable .
  • 504: « The server, acting as a gateway, timed out waiting for another server to respond » . Код возвращается, когда два сервера участвуют в обработке запроса, и время ожидания первого сервера ожидания ответа второго сервера. Узнайте больше о том, как исправить ошибки 504 .
  • 521: « Web server is down » Ошибка 521 — это сообщение об ошибке, относящейся к Cloudflare . Это означает, что ваш веб-браузер смог успешно подключиться к Cloudflare, но Cloudflare не удалось подключиться к исходному веб-серверу.

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

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

0