Yandex
Обновить настройки cookies

Коды ошибок HTTP

Знакомы ли вам досадные моменты, когда сайт выдает коды ошибок http? Большинство интернет-пользователей задавались вопросами о причинах и способах устранения этих проблем.
Перед тем, как рассматривать проблему широко, представим важные определения. Клиент - это ПО или аппаратное обеспечение, имеющее связь с сетью Интернет и запрашивающее у сервера определенные данные. Server - это компьютер, который хранит данные, выполняет служебные функции для других компьютеров в сети, принимает запросы от клиентов и отвечает на них.
 

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

Код ошибок http запросов - это часть заголовка ответа веб-сервера на запрос клиента, которая информирует о результате и указывает, какие действия он должен предпринять. За кодом ответа следует фраза на английском языке, которая поясняет проблему.
Коды состояния HTTP бывают пяти категорий:
  • Класс 1 - временные информационные коды (1ХХ). Они указывают на то, что запрос принят и находится в обработке.
  • Класс 2 - успешная обработка запроса (2ХХ). Например, это не ошибка 200 http, так как запрос был успешно выполнен.
  • Класс 3 - перенаправление (3ХХ). Указывают на необходимость перенаправления с одного адреса на другой (например, http ошибки 300, 301, 302, 304).
  • Класс 4 - ошибка со стороны клиента (4ХХ). Например, при ошибке 404 запрашиваемая страница не найдена, а 403 - указывает на запрет доступа к странице.
  • Класс 5 - (5ХХ) ошибка со стороны сервера.
 

4xx - Ошибки на стороне клиента

Ошибки запросов http 4XX отвечает за проблемы, которые происходят на стороне клиента, то есть посетителя сайта. Большинство таких ответов сервера возникают из-за недоработок веб-мастера: неверное указание URl, ошибки в настройке HTTP-сервера и т.п.
Код ошибки сервераПояснение
400 - Плохой запросhttp 400 что это за ошибка? Сервер не может обработать запрос из-за проблемы клиента. Например, слишком большой файл, неверный синтаксис, недействительный URL. Поэтому код ошибки 400 http иногда используется как обобщающий для всех статусов ошибок, даже если проблема возникает на стороне сервера.
401 - Несанкционированныйhttp error 401 что за ошибка? Запрос не содержит подходящих учетных данных для проверки подлинности, аутентификация не удалась. В тех случаях, когда вы хотите сообщить клиенту, что полностью запрещен доступ, должна выдаваться ошибка http 403.
402 - Требуется оплатаЗапрос не может быть выполнен до тех пор, пока клиент не произведет оплату. В настоящее время очень редко применяется в веб-разработке.
403 - ЗапрещеноЗапрос был понят, но сервер отказывает в авторизации, поэтому клиент не может получить доступ к нему. В отличие от статуса 401, который требует аутентификации, статус 403 говорит, что клиент не имеет разрешения на доступ.
404 - Не найденоОшибка http 404 указывает на то, что сервер не готов предоставить доступ к ресурсу. Если страницы исчезли навсегда рекомендуется использовать код статуса 410.
405 - Метод не допускается405 http ошибка говорит, что сервер не поддерживает конкретный ресурс, который был запрошен клиентом.
406 - Неприемлемоhttp 406 ошибка подобно статусу 405 указывает на отсутствие поддержки для конкретного запроса. Но в отличие от предыдущей ошибки, код 406 говорит о том, что сервер понял запрос, но ответ не может быть принят клиентом.
407 - Необходима аутентификация проксиДанный код, который подобен коду 401, отражает необходимость предварительной авторизации пользователя через прокси-сервер.
408 - Таймаут запросаСервер в установленные сроки не получил запрос от клиента. Это может быть вызвано нестабильным или прерванным соединением.
409 - КонфликтЗапрос был корректным, но на стороне сервера возникли проблемы. Примером http 409 ошибки может быть попытка редактирования файла пользователем, когда эти операции не допускаются.
410 - Ушли в прошлоеЗапрашиваемый ресурс больше не доступен на сервере и это состояние, скорее всего, является постоянным. Если вы не уверены, является ли это состояние постоянным, рекомендуется использовать код 404.
411 - Требуется длинаОтсутствует предопределенная длина тела запроса. Клиент может повторить запрос, указав корректную длину тела запроса.
412 - Предпосылки не выполненыЗапросы с условиями являются одной из возможностей протокола HTTP. Статус указывает, что одно или несколько условий в заголовке запроса не выполнены. Например, это может произойти в случае условного запроса GET, когда ресурс должен быть повторно включен только в том случае, если он был изменен.
413 - Тело запроса великоЭта ошибка возникает, когда размер тела запроса (или передаваемого файла) превышает ограничение, установленное на сервере.
414 - URI слишком длинныйКлиентский запрос содержит URL, превышающий допустимую длину. Ограничения устанавливаются браузерами и поисковыми системами в целях безопасности и предотвращения DDoS-атак или ошибок кода. Однако сам протокол HTTP не устанавливает явные ограничения, и если URL-адрес превышает допустимую длину, сервер возвращает ошибку.
415 - Неподдерживаемый тип мультимедиа415 ошибка http означает, что сервер не может обработать тело или часть тела запроса из-за неизвестного формата мультимедиа.
Этот код ошибки является аналогом статусного кода 406, но в отличие от него 415 ошибка связана с неподдерживаемым значением именно мультимедиа.
416 - Диапазон не удовлетворяетсяВ запросе присутствовало поле заголовка Range, но ни одно из указанных значений не соответствует размеру запрашиваемого ресурса, и при этом не указано поле заголовка If-Range. Это особенно относится к запросам на указание диапазона байтов, где первый байт в спецификации диапазона был больше, чем фактический размер ресурса.
417 - Ожидание не оправдалосьСервер не может обработать поле "Expect", содержащееся в запросе. Также возможна ситуация, когда при обращении к серверу через прокси-сервер время ожидания истекло, что также вызывает ошибку 417. По сравнению с ошибкой 408, явно указывается использование прокси-сервера.
418 - 420 - Я чайникОшибка 418 http изначально создана как первоапрельская шутка, иногда используется в качестве юмористического элемента, но на самом деле не предназначена для реальных повседневных целей. Она не получила официального статуса и, как следствие, большинство браузеров игнорируют ее.
421 - Неправильный запросЗапрос передан на сервер, который не может обработать его правильно. Обычно это происходит, когда в DNS указан неправильный IP-адрес. Также такая ошибка может возникнуть на сайтах с одним SSL-сертификатом для разных доменов.
422 - Необработанное422 ошибка http возникает, когда полученный запрос успешно доставлен серверу и обработан, однако обнаружена логическая ошибка в содержимом XML-документа, что препятствует выполнению требуемой операции в рамках протокола WebDAV.
Это может произойти, например, при передаче данных, не соответствующих ожидаемому формату или содержащих ошибки.
423 - ЗаблокированДоступ на указанную платформу не разрешен для текущего пользователя или его аккаунта. Это может быть вызвано отсутствием или истекшим сроком действия учетных данных, неверными учетными данными, а также ограничениями, установленными администратором системы.
424 - Неудачная зависимостьВыполнение текущего запроса зависит от успешного выполнения другого процесса. Если зависимая операция не выполнилась, это может привести к невозможности выполнить текущий запрос и сервер возвращает данный код.
425 - Слишком раноКлиентский HTTP запрос происходит на протоколе HTTPS. В процессе установки связи между клиентом и сервером может потребоваться значительное время. Это создает уязвимость, так как вынуждает сервер отправлять клиенту запрос на повторение до тех пор, пока безопасное соединение не будет полностью установлено.
426 - Требуется обновлениеНеобходимо использовать новый протокол для отправки запросов на сервер. Эта ошибка возникает, когда клиент продолжает использовать устаревшую версию протокола HTTP, в то время как сервер требует более современной версии.
428 - Требуется предварительное условиеКод разработан с целью предотвращать конфликтные версии ресурса GET-PUT, когда клиент получает состояние ресурса, изменяет его и отправляет обратно на сервер, в то время как третья сторона изменяет состояние на сервере, что приводит к возникновению конфликта.
429 - Слишком много запросов429 ошибка http будет отправлена, если клиент совершает слишком много запросов в течение краткого промежутка времени.
431 - Запрос хедеров слишком большойСервер не может обработать запрос из-за слишком больших полей заголовка.
444 - Нет ответаИспользуется для обозначения в лог-файлах сервера Nginx ситуаций, когда сервер закрыл соединение без передачи информации обратно пользователю. В основном применяется в контексте защиты от вредоносного программного обеспечения.
499 - Закрытый запрос клиентаhttp 499 ошибка выдается, когда клиент прекращает соединение в процессе обработки запроса сервером. В результате сервер не может отправить обратно http-заголовок.
450 - Заблокировано родительским контролем WindowsВ параметрах родительского контроля Windows определена блокировка доступа к отдельным страницам. Используется, когда родители применяют функцию родительского контроля, а пользователь запрашивает доступ к заблокированному ресурсу.
451 - Не доступен по юридическим причинамСервер отказывается обслуживать запрошенный контент: установлена цензура правительства к определенному контенту, при нарушении авторских прав, а также когда контент, который противоречит законам или судебным решениям.
 

5xx - Серверные коды ошибок http 500

5XX статусы ошибок http обычно связаны с действиями вебмастера или администратора. Изменения, внесенные в директорию или конфигурацию сервера, могут привести к некорректной работе сайта. Например, неправильная настройка прав доступа может вызвать ошибку.
http status, codeОписание
500 - Внутренняя ошибка сервераЧто за ошибка http error 500? Она появляется, когда на сервере произошло непредвиденное условие, которое препятствует успешному выполнению запроса. Это могут быть внутренние сбои программного обеспечения, проблемы с базой данных, ограничениями ресурсов и другими факторами.
501 - Метод не поддерживаетсяСервер не имеет возможностей для выполнения запроса, не распознает или не поддерживает метод, указанный в нем.
502 - Ошибка шлюзаПри ошибке http 502 сервер, действующий в качестве прокси-сервера или шлюза, получил недопустимый ответ от следующего сервера в цепочке запросов. Это может произойти по нескольким причинам, например, если сервер недоступен, отвечает с ошибкой или слишком медленно.
503 - Служба недоступнаhttp 503 что за ошибка - служба недоступна? Сервер не может выполнить запрос клиента. Может быть, он чрезмерно загружен или отключен.
504 - Время прохождения через межсетевой шлюз истеклоТакая ошибка возникает, когда сервер, работая в качестве прокси-сервера или шлюза, не может получить ответ вовремя от сервера, к которому он обратился.
505 - Версия HTTP не поддерживаетсяСервер отказывается поддерживать версию протокола HTTP, которая была указана в запросе клиента. В частности, клиент отправил запрос с использованием новой версии протокола, которую сервер не распознает и не может обработать.
507 - Недостаточно местаСерверу не хватает места на диске для выполнения требуемой операции. Например, на сервере запущено много приложений или хранится большое количество данных, сервер не настроен для учета дискового пространства и т.п.
510 - Отсутствует расширениеСервер не может обработать запрос клиента из-за отсутствия поддержки запрашиваемого расширения.
Сервер может работать на устаревшей или несовместимой версии ПО, которое не поддерживает требуемое расширение; не настроен для обработки определенного типа расширений; недостаточно ресурсов для их выполнения.
 

Как проверить код состояния страницы

Давайте начнем с ручного способа. Откройте сайт в браузере Chrome и нажмите на клавишу «F12» (если у вас ноутбук, то, возможно, придется нажать «Fn + F12»). Также можно открыть инструменты разработчика с помощью сочетания клавиш «Ctrl + Shift + I». Переключитесь на вкладку «Network» и нажмите «Ctrl + R», чтобы получить код страницы. В столбце «Status» вы увидите коды состояния. Также существуют специальные плагины и сервисы.

Bertal

Бесплатный сервис для просмотра http-заголовков, веб-файлов, html-кодов страниц. Совместим со всеми протоколами: HTTP, HTTPS, FTP.
Запрос информации производится методами HEAD, GET, POST. Метод HEAD используется для получения только заголовка. Метод GET используется для получения и заголовка, и тела. Метод POST работает аналогично методу GET, но дополнительно содержит заполненную строку POST.
Поддерживает поисковых роботов, таких как YandexBot, GoogleBot, BingBot, Yahoo, Baiduspider - можно проанализировать их действия и получить нужную информацию.
Сервис полностью совместим со всеми популярными браузерами, работает с Proxy

PR-CY

Сервис SEO-аудита сайта, мониторинга и контроля позиций в поисковой выдаче. Идеально подходит для анализа кодов ответа сервера.
Детально анализирует все элементы страницы, такие как тексты, скрипты, видео и фотографии. Поддерживает различные методы запросов, включая GET, POST и HEAD.
Работает с Google и Yandex.
Есть бесплатный тариф для экспресс-анализа сайта. Однако для полного аудита рекомендуется приобретение подписки.

Checkmy

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

Яндекс.Вебмастер

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

Converseo

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

Coolakov

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

Плагины

Все плагины предоставляют ценную информацию и помогут вам в оптимизации вашего сайта. Их использование совершенно бесплатно.
  • Redirect Path Link
  • Robots Exclusion Checker
  • SEO META in 1 CLICK
  • Website SEO Checker: Free Audit & Analysis.
 

Как исправить ошибку HTTP

Важно обновлять веб-браузер после внесения изменений в программное обеспечение.
Анализ журнала сервера является важным шагом для понимания процессов обработки запросов. Веб-серверы, такие как Apache и Nginx, предоставляют файлы access.log и error.log, содержащие полезную информацию. Аккуратное изучение этих файлов может помочь выявить и исправить проблемы. Стоит отметить, что коды ошибок HTTP являются стандартной частью протокола. Они генерируются сервером приложений, обрабатывающим запросы клиентов, и отражают специфическую ошибку. Таким образом, код ответа сервера зависит от того, как программное обеспечение обрабатывает эту ошибку.
Рассмотрим устранение наиболее распространенные ошибки http при обращении к серверу, которые могут возникнуть как со стороны клиента, так и со стороны сервера.
Ошибка http при обращении к серверуПричинаРекомендации - что делать
400Много файлов cookies и данных в кэше.Очистить кэш веб-браузера и удалить файлы cookies.
 Неисправности в браузере.Обновить используемый веб-браузер до последней версии или перейти в другой браузер.
 Неверный HTTP-запрос.Проверить синтаксис и параметры запроса, чтобы исключить возможные ошибки.
401Клиент пытается получить доступ к ограниченному ресурсу, который охраняется системой авторизации HTTP.Ошибка появляется до тех пор, пока клиент не предоставит правильные учетные данные, включая логин и пароль. Для этого требуется внести соответствующую информацию в файл .htpasswd.
403Отсутствуют права на чтение запрашиваемого файла.Расширить права доступа.
 Использование файла .htaccess для ограничения доступа по определенным IP-адресам и ресурсам.Проверить и настроить файл .htaccess.
 Клиент пытается открыть каталог, в котором отсутствует индексный файл, а отображение содержимого отключено.Активировать функцию отображения содержимого каталога в настройках сервера.
404Это может быть вызвано несколькими причинами, но важно понять, какие действия можно предпринять для решения проблемы.Проверить правильность написания ссылки или URL-адреса, который вы ввели в браузер.
Возможно, запрашиваемый файл был перемещен, удален или переименован на сервере.  Проверить конфигурацию сервера и убедитесь, что правильно указана корневая директория.  Убедитесь, что у вас есть права доступа для открытия каталога, где находится запрашиваемый файл.
Проверить, поддерживает ли сервер символические ссылки.
500Неправильные права доступа к папкам и файлам или некорректный инструктаж в файле .htaccess.Проверить настройки прав доступа к файлам и папкам, убедиться в правильности .htaccess и избегать использования неподдерживаемых директив.
502Проблемы с обратным прокси-сервером.Проверить состояние и настройку сервера backend.
Проверить настройку сетевого соединения между серверами backend и обратным прокси-сервером.
Убедиться, что нет блокировки брандмауэром.
Проверить разрешения для сокетов и убедиться, что они корректно расположены.
503Зависание скриптов при передаче больших файлов.Проверить компоненты и плагины вашей CMS, отключая их по очереди и определяя наиболее тяжелые или поврежденные, которые замедляют загрузку сайта. Отказаться от таких компонентов или найти более быстрые аналоги.
Проверить наличие медленных запросов в файле mysql-slow.log.
Убедиться, что в PHP-скриптах используются локальные пути, а не URL-адреса типа "http://...".
 Большое количество запросов к серверу - может быть вызвано несколькими причинами:
- Разделение или ссылки на слишком большое количество файлов (изображения, таблицы стилей, JS-скрипты), которые загружаются через отдельные запросы.
- DDoS-атаки, флуд и спам-комментарии.
Объединить ресурсы в один файл, где это возможно.
В случае DDoS-атаки важно определить ее тип и предпринять соответствующие меры для ее устранения.
504Слабое интернет-соединение между шлюзом и основным сервером. Это может быть связано с проблемами провайдера или в сетевой инфраструктуре.Проверить интернет-соединение и убедиться в его стабильности. Если возникают проблемы с подключением - обратиться к своему интернет-провайдеру.
 Перегрузка сервера-шлюза по причине высокого трафика и недостаточных ресурсов.Оптимизация кода для улучшения производительности или добавление дополнительных ресурсов на сервере.
 В настройках сервера может быть указан слишком короткий интервал времени для ожидания ответа от сервера-посредника.Увеличить его время в настройках сервера-посредника.
 

Заключение

Даже на самых лучших сайтах иногда возникают проблемы и ошибки. Если вы хотите справиться с такой HTTP-ошибкой самостоятельно, необходимо разобраться в источнике ее возникновения. Новые знания помогут вам экономить не только время, но и ресурсы, так как не придется обращаться за помощью к технической поддержке провайдера.
28 Apr 2024, 16:08:59