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

Роль кодов ответа сервера в SEO

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

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

Как проверить код ответа сервера

В браузере Google Chrome для проверки кода ответа страницы можно использовать панель инструментов разработчика, вкладку Network:

Проверить код ответа сервера также можно с помощью специализированных онлайн сервисов, например, bertal.ru

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

Для массовой проверки лучше использовать любой парсер. Например Screaming Frog SEO Spider. С помощью него можно проверить как весь сайт, так и отдельный перечень URL-адресов.

Какие бывают коды ответа сервера

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

Всего выделяют пять групп кодов ответа сервера:

  • 1хх - информационные коды. Эти коды отвечают за информацию о процессе передачи данных. Информирует об успешном получении запроса и, что передача данных началась.
  • 2хх - успех. Эти коды информируют об успешном принятии и обработке запроса сервером.
  • 3хх - перенаправление. Эти коды информируют о том, что необходимо предпринять дополнительные действия для успешного выполнения запроса, например сделать запрос по другому URI..
  • 4хх - ошибка клиента. Эти коды информируют о том, что запрос не может быть выполнен из-за ошибки на стороне клиента.
  • 5хх - ошибка сервера. Эти коды информируют о том, что запрос не может быть выполнен из-за ошибки на стороне сервера.

1хх коды ответа сервера

100 Continue

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

101 Switching Protocols

Сервер по требованию клиента переключил протокол на тот, который указан в заголовке Upgrade. Сервер отправляет заголовок ответа Upgrade, информируя о протоколе на который произошло переключение.

102 Processing

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

103 Early Hints

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

2хх коды ответа сервера

200 OK

Сервер уведомляет, что запрос обработан успешно. Если происходил запрос каких-то данных, то, они находятся в заголовке или теле ответа. Один из вариантов - страница успешно загружена. Все страницы, которые вы хотите видеть в индексе поисковой системы должны иметь 200 OK код ответа сервера.

201 Created

Данный код ответа уведомляет, что в результате успешного запроса, был создан новый ресурс. Адрес или адреса созданного ресурса указываются в теле ответа или же в заголовке Location. Также серверу рекомендуется указать характеристики ресурса в теле ответа. Формат тела ответа определяется содержимым заголовка Content-Type. Новый ресурс должен быть создан до того как сервер отправил ответ клиенту, в противном случае будет использоваться следующий код.

202 Accepted

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

203 Non-Authoritative Information

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

204 No Content

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

205 Reset Content

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

206 Partial Content

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

207 Multi-Status

В ответе содержится информация сразу о нескольких независимых операциях.

3хх коды ответа сервера

300 Multiple Choice

Данный ответ приходит если на запрос доступно несколько ответов. User-agent или пользователь должен выбрать один из ответов.

301 Moved Permanently

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

Для SEO данный код ответа сервера является одним из основных. Он позволяет склеить зеркала сайта (пример - переезд на https), а также изменить адрес страницы и указать это поисковой системе, чтобы сохранить трафик и ссылочный вес.

302 Moved Temporarily

Документ временно перемещен по другому адресу.

Для SEO этот код полезен тем, что дает понять поисковому боту, что необходимо учитывать старый URI пока не поступит других указаний. Если же новый адрес больше не измениться стоит использовать 301 Moved Permanently.

303 See Other

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

304 Not Modified

Данный код ответа сервера позволяет существенно снизить нагрузку на сервер. Данный код стоит отдавать когда дата последнего обновления страницы (Last-Modified) старше чем дата в заголовке If-Modified-Since. Получается если документ не менялся с указанной даты, то документ не нужно загружать заново и происходит редирект на кэшированную копию.

305 Use Proxy

Запрос к указанному ресурсу может быть осуществлен только через прокси-сервер. Он указан поле Location. Клиент должен повторить запрос через прокси.

307 Temporary Redirect

Код ответа 307 по сути своей является аналогом 302. Ресурс временно доступен по другому адресу, но вернется на старый. Отличие только в том, что 307 не позволяет изменить метод запроса с POST на GET.

308 Permanent Redirect

Та же ситуация, что и с 307. Только 308 является аналогом 301 редирект. Отличие лишь в том, что данный редирект не позволяет изменить метод запроса с POST на GET.

Подробнее с 3хх редиректами можете ознакомиться в нашей статье Гид по 3хх редиректам

4хх коды ответа сервера

400 Bad Request

Сервер не может обработать запрос из-за наличия в нем ошибки (сервер не понимает запроса)

401 Unauthorized

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

402 Payment Required

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

403 Forbidden

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

404 Not Found

Самый распространенный 4хх код ответа сервера. Сервер понял и принял запрос, но не может найти указанный ресурс или содержимое. Также важно упомянуть, что страница с информацией о том, что ресурс недоступен, должна отдавать 404 код ответа сервера, а не 200 ОК.

405 Method Not Allowed

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

406 Not Acceptable

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

407 Proxy Authentication Required

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

408 Request Timeout

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

409 Conflict

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

410 Gone

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

411 Length Required

В запросе должно быть указано значение заголовка Content-Length. В противном случае запрос не может быть выполнен. Может появляться когда на сервере стоит ограничение объёма загружаемого файла. В запросе должен быть указан его размер, чтобы не совершать запросов, которые ни к чему не приведут.

412 Precondition Failed

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

413 Request Entity Too Large

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

414 URI Too Long

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

415 Unsupported Media Type

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

429 Too Many Requests

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

451 Unavailable For Legal Reasons

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

5хх коды ответа сервера

500 Internal Server Error

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

501 Not Implemented

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

502 Bad Gateway

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

503 Service Unavailable

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

504 Gateway Timeout

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

505 HTTP Version Not Supported

Указанная в запросе версия HTTP протокола не поддерживается сервером.

507 Insufficient Storage

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

508 Loop Detected

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

511 Network Authentication Required

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

526 Invalid SSL Certificate

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

Вывод

В качестве вывода предлагаем определить для себя какие коды ответа сервера зачастую необходимы и используются SEO-специалистами.

  • Самый главный это 200 OK. Этот код должны отдавать все страницы, которые должны быть в индексе поисковой системы.
  • Если нам необходимо изменить URL какой-то из страниц, то необходимо использовать либо 301, либо 302 код ответа сервера, в зависимости от ситуации.
  • Если страница удалена, то необходимо использовать 404, либо 410, опять же в зависимости от ситуации.

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

Комментарии

Комментарии