SEO
HTTP коды ответа сервера: что это и как с ними работать?
Знание этих кодов — важный этап предотвращения, поиска и устранения ошибок при ведении проекта.
4 января 2021
0
4 мин.
Код состояния HTTP — это часть первой строки ответа сервера при запросах по протоколу HTTP, которая представляет целое число из трёх десятичных цифр. Код виден всегда вместе с пояснительным текстом на английском. Робот поисковиков сначала смотрит на код ответа страницы, а уже потом решает, что дальше делать. За кодами ответа страниц вашего сайта важно следить, так как это один из основоположных показателей здоровья сайта.
Варианты проверки кода
- На панели инструментов разработчика в Google Chrome есть вкладка Network, которая показывает код. Облегченный вариант доступа к ней — нажать F12 и обновить страницу.
- С помощью HTTP Headers можно узнать о каждой странице.
- С помощью специальных программ, которые могут проверить список URL или просканировать весь сайт на ответы сервера. Например, Netpeak Spider, Netpeak Checker, Serpstat, Screaming Frog SEO Spider, Urlitor.
Классы состояния
«Классы состояния» — это сгруппированные коды по общим признакам. Каждый класс определяется первой цифрой кода.
- 1xx — информационные.
Временные коды, связаны с передачей данных, информируют о продолжении принятого запроса. - 2xx — успешные.
Запрос получен и обработан. - 3xx — перенаправления (редирект).
Для выполнения запроса необходимы еще действия. - 4xx — клиентские ошибки.
Запрос не выполнен по причине ошибки клиента. - 5xx — серверные ошибки.
В этом классе сервер всегда уведомляет о причине необработанного запроса. Клиентской ошибки в этом случае нет.
Коды состояния HTTP , которые лучшие запомнить
Описание упрощено для понимания, а уже более профессиональное значение кодов ответа можно посмотреть в следующем разделе статьи.
- 200 OK — со страницей все хорошо, можно идти дальше.
- 301 Moved Permanently — редирект на новую страницу на постоянной основе, то есть страница перемещена на новый URL навсегда.
- 404 Not Found — страница не найдена и тут уже нужно разбираться:
- Или ее и не должно быть изначально, и кто-то просто опечатался в URL страницы — тогда все нормально.
- Важная страница вдруг перестала работать, тогда срочно нужно разбираться почему и исправлять.
- Где-то на сайте появились ссылки на страницы, которые отдают 404 — разобраться в причине появления ссылок и исправить.
Все HTTP коды ответа сервера и их значения
Информационные
- 100 Continue — «Продолжить». Запрос успешно принят.
- 101 Switching Protocol — «Переключение протокола». Сервер перешел на протокол заголовка.
- 102 Processing — «В обработке». Сервер еще не обработал полученный запрос.
- 103 Early Hints — «Ранние подсказки». Указываются ресурсы, которые можно загрузить до ответа сервера
Успешные
- 200 OK — «Успешно». Запрос обработан. Зависит от запрашиваемого метода HTTP:
- GET: «ПОЛУЧИТЬ». Ресурс передан в теле ответа.
- HEAD: «ЗАГОЛОВОК». Заголовки переданы.
- POST: «ПОСЫЛКА». Ресурс результата действия сервера на запрос передан.
- TRACE: «ОТСЛЕЖИВАТЬ». Ответ содержит тело запроса.
- 201 Created — «Создано». Запрос выполнен и ресурс создан.
- 202 Accepted — «Принято». Запрос принят, но не обработан. Не поддерживается — нет способа при помощи HTTP отправить ответ позже.
- 203 Non-Authoritative Information — «Информация не авторитетна». Возвращенная информация предоставлена из другого источника, а не от стартового сервера.
- 204 No Content — «Нет содержимого». Нет содержимого для ответа. Заголовки ответа при этом присылаются.
- 205 Reset Content — «Сбросить содержимое». Уведомление, что запрос обработан, и необходимо отправить отображение документа этого запроса.
- 206 Partial Content — «Частичное содержимое». Используется для отдельной загрузки в несколько потоков при отправке заголовка диапазона.
Перенаправления
- 300 Multiple Choice — «Множественный выбор». У запроса есть больше одного возможного ответа. Необходимо выбрать один из них, но стандартного способа выбора нет.
- 301 Moved Permanently — «Перемещён на постоянной основе». Изменился URI запрашиваемого ресурса. Новый URI, может быть, предоставлен в ответе.
- 302 Found — «Найдено». Временно изменен запрашиваемый ресурс. В будущем изменения в URI, возможно, будут доступны.
- 303 See Other — «Просмотр других ресурсов». Направление для получения запрашиваемого ресурса в другой URI с запросом GET.
- 304 Not Modified — «Не модифицировано». Запрошенный ресурс не изменен. Можно использовать кэшированную версию ответа далее.
- 305 Use Proxy — «Использовать прокси». Запрашиваемый ресурс запроса имеет доступ через прокси.
- 306 Switch Proxy — «Больше не использовать».
- 307 Temporary Redirect — «Временное перенаправление». Отправлено для получения запрошенного ресурса на другой URL-адрес с помощью метода предыдущего запроса.
- 308 Permanent Redirect — «Перенаправление на постоянной основе». Постоянное нахождение ресурса в другом URI, который находится в заголовке.
Клиентские
- 400 Bad Request — «Плохой запрос». Некорректный синтаксис не дает серверу обработать запрос.
- 401 Unauthorized — «Неавторизованно». Необходима аутентификация для получения ответа.
- 402 Required — «Необходима оплата». Код использования в будущем.
- 403 Forbidden — «Запрещено». Сервер отказывает в ответе, так как у клиента нет прав доступа к содержанию ресурса.
- 404 Not Found — «Не найден». Сервер не может найти запрашиваемый ресурс. Из-за частоты появления в вебе код ответа является самым известным.
- 405 Method Not Allowed — «Метод не разрешен». Метод, известный серверу, деактивирован и невозможно его использовать.
- 406 Not Acceptable — Не найден контент с указанными критериями от user agent.
- 407 Proxy Authentication Required — Аналогично коду 401. Только в этом коде требуется аутентификация для прокси сервера.
- 408 Request Timeout — Ответ кода может прийти без предварительного запроса, поэтому сервер отключает неиспользуемое соединение.
- 409 Conflict — Запрос в конфликте с настоящим состоянием сервера.
- 410 Gone — Контент, который был запрошен, удален с сервера.
- 411 Length Required — Серверу необходим указанный заголовок Content-Length, поэтому запрос отклонен.
- 412 Precondition Failed — В заголовках указаны условия, которые серверу невозможно выполнить.
- 413 Request Entity Too Large — Лимит сервера превышен размером запроса. Возможно закрыт соединения сервером, вернув заголовок Retry-After.
- 414 Request-URI Too Long — URI слишком длинный для обработки сервером.
- 415 Unsupported Media Type — Запрос отклонен. Формат медиа, которые запрошены у сервера, не поддерживается.
- 416 Requested Range Not Satisfiable — Вероятно, диапазон заголовка не выполняем, из-за выхода переданного URI за пределы.
- 417 Expectation Failed — Ожидание, которое получили из заголовка запроса Expect, не может выполняться сервером.
Серверные
- 500 Internal Server Error — «Внутренняя ошибка сервера». Сервер не может решить текущую проблему.
- 501 Not Implemented — «Не выполнено». Метод запроса не обрабатывается и не поддерживается сервером.
- 502 Bad Gateway — «Плохой шлюз». Во время работы в качестве шлюза сервер получил недопустимый ответ.
- 503 Service Unavailable — «Сервис недоступен». Сервер не готов обрабатывать запрос, причиной является отключение сервера или его перегруженность. Страница должна отправлять объяснение проблемы вместе с ответом.
- 504 Gateway Timeout — Сервер работает в виде шлюза, не получая своевременно ответ.
- 505 HTTP Version Not Supported — «HTTP-версия не поддерживается». Не поддерживается HTTP-версия, используемая в запросе.
Понравилась статья?
😍
😂
😄
😐
🤔
😩
