Код ответа сервера

Материал из Энциклопедия интернет-маркетинга MarketWiki

Код ответа сервера (также HTTP-статус код, HTTP status code) - трёхзначное число, которое сервер возвращает в ответ на запрос браузера или поискового робота. Код информирует о результате обработки запроса: успешно ли загружена страница, произошла ли ошибка, требуется ли перенаправление на другой адрес.

Для интернет-маркетолога и SEO-специалиста понимание кодов ответа критически важно, так как они напрямую влияют на индексацию сайта поисковыми системами и пользовательский опыт. Неправильные коды могут привести к тому, что важные страницы выпадут из поиска или не будут загружаться у посетителей.

Классификация кодов ответа

[править]

Все HTTP-статусы делятся на 5 классов, определяемых первой цифрой кода.

1xx: Информационные

[править]

Коды этого класса информируют о том, что запрос принят и обрабатывается. В обычной работе сайтов встречаются редко и обычно не видны пользователю. Для SEO не имеют значения.

2xx: Успешные

[править]

Коды, сообщающие об успешной обработке запроса.

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

201 Created - запрос выполнен успешно, и в результате создан новый ресурс. Используется в API при создании записей.

204 No Content - запрос выполнен успешно, но сервер не возвращает никакого содержимого. Иногда используется для служебных вызовов.

3xx: Перенаправления

[править]

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

301 Moved Permanently - постоянное перенаправление. Указывает, что страница навсегда перемещена на новый адрес. Поисковые системы передают вес страницы на новый URL и обновляют ссылки в своей базе. Используется при смене домена, переезде на HTTPS, объединении страниц.

302 Found (ранее 302 Moved Temporarily) - временное перенаправление. Указывает, что страница временно доступна по другому адресу. Поисковые системы не передают вес и продолжают индексировать исходный URL. Используется при технических работах, A/B-тестировании, временных акциях.

303 See Other - аналогичен 302, но предписывает использовать метод GET для получения ресурса. Редко используется в обычных сайтах.

304 Not Modified - указывает, что страница не изменилась с момента последнего запроса. Используется для экономии трафика и ускорения загрузки: браузер или робот могут использовать кэшированную версию.

307 Temporary Redirect - замена 302 для HTTP 1.1. Аналогично 302 указывает на временное перенаправление.

308 Permanent Redirect - замена 301 для HTTP 1.1. Аналогично 301 указывает на постоянное перенаправление.

4xx: Ошибки клиента

[править]

Коды, указывающие, что ошибка произошла по вине клиента (браузера или пользователя) - запрошен несуществующий ресурс, недостаточно прав доступа и т.д.

400 Bad Request - сервер не может обработать запрос из-за синтаксической ошибки. Редко встречается на обычных сайтах.

401 Unauthorized - требуется аутентификация. Пользователь должен войти в систему для доступа к ресурсу.

403 Forbidden - доступ запрещён. Сервер понял запрос, но отказывается его выполнять. Обычно означает, что у пользователя или робота нет прав на просмотр страницы. Важно не путать с 404: здесь страница существует, но доступ к ней ограничен.

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

405 Method Not Allowed - метод запроса (GET, POST и т.д.) не поддерживается для данного ресурса.

410 Gone - страница была удалена намеренно и больше не вернётся. В отличие от 404, это более явный сигнал для поисковиков, что страница не существует и не появится вновь.

429 Too Many Requests - слишком много запросов за короткое время. Часто возвращается при защите от DDoS-атак или при превышении лимитов API.

5xx: Ошибки сервера

[править]

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

500 Internal Server Error - внутренняя ошибка сервера. Самая общая ошибка, указывающая, что на сервере произошёл сбой, но конкретная причина не уточняется. Требует анализа логов сервера и работы программистов.

502 Bad Gateway - сервер, выступая в роли шлюза или прокси, получил недействительный ответ от вышестоящего сервера. Часто возникает при проблемах с хостингом или CDN.

503 Service Unavailable - сервер временно не может обработать запрос из-за перегрузки или технических работ. Поисковые системы понимают, что проблема временная, и возвращаются позже.

504 Gateway Timeout - сервер, выступая в роли шлюза, не дождался ответа от вышестоящего сервера.

507 Insufficient Storage - недостаточно места на сервере для обработки запроса.

Значение для SEO

[править]

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

301 редирект

[править]

Правильное использование 301-редиректов позволяет сохранить вес страницы при её перемещении. Например, при смене домена, переходе с HTTP на HTTPS, объединении похожих страниц.

Важно: использовать 301 только для постоянных перемещений. Для временных акций или тестирования применяется 302.

404 ошибка

[править]

Страницы с 404 должны быть сведены к минимуму. Битые ссылки ухудшают пользовательский опыт и заставляют поисковых роботов тратить бюджет сканирования впустую.

Что делать с 404:

  • Настроить правильные редиректы для страниц, которые были перемещены
  • Вернуть 410 для страниц, которые удалены навсегда и точно не вернутся
  • Создать полезную кастомную страницу 404 с навигацией по сайту

5xx ошибки

[править]

Ошибки сервера - сигнал о серьёзных технических проблемах. Длительное наличие 5xx может привести к исключению страниц из индекса, так как поисковые роботы не могут получить к ним доступ.

При временных проблемах (например, пиковые нагрузки) лучше использовать 503, чтобы поисковики понимали, что ситуация временная и вернутся позже.

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

[править]

Вручную

[править]

В браузере можно посмотреть код ответа через инструменты разработчика (F12 → вкладка Network). При загрузке страницы все запросы отображаются с их статусами.

Специализированные инструменты

[править]
  • Screaming Frog SEO Spider - при сканировании сайта показывает код ответа для каждой страницы. Позволяет быстро найти все страницы с ошибками.
  • Netpeak Spider - аналогичный функционал с удобными фильтрами.
  • Яндекс.Вебмастер - раздел «Диагностика» → «Состояние страниц» показывает страницы с ошибками, которые нашёл робот Яндекса.
  • Google Search Console - раздел «Покрытие» содержит информацию о страницах с ошибками и предупреждениями.
  • Online HTTP Status Checker - простые онлайн-сервисы для проверки одного URL.

Анализ логов сервера

[править]

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

Распространённые проблемы

[править]
  • Мягкие 404. Страницы отдают код 200, но содержат текст «страница не найдена» или пустой контент. Поисковые системы индексируют такие страницы, что приводит к засорению базы бесполезными URL.
  • Цепочки редиректов. Несколько последовательных перенаправлений (301 → 302 → 301) увеличивают время загрузки и могут привести к потере веса.
  • Редиректы на главную. Вместо перенаправления на конкретную страницу все удалённые страницы ведут на главную. Поисковики считают это плохой практикой.
  • Страницы с 5xx в Google Search Console. Длительное наличие серверных ошибок сигнализирует о проблемах с хостингом или кодом.
  • Закрытые в robots.txt страницы с 200. Если страница закрыта от индексации в robots.txt, но робот всё равно пытается её сканировать и получает 200, бюджет тратится впустую.

Связанные термины

[править]