Раздел 3.1 · Индексация и управление обходом Урок 15 из 89

3.1.4Коды ответа сервера, 404 и битые ссылки

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

8 мин чтения 8 разделов

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

Ошибки в кодах ответа коварны тем, что внешне сайт может выглядеть нормально. Страница открывается, текст на месте, а сервер при этом сообщает роботу, что её нет, или наоборот — выдаёт пустую страницу за существующую. В этом уроке разберём, какие коды важны для SEO и как находить проблемы.

Основные коды и что они значат для поиска

Коды делятся на классы по первой цифре: 2xx — успешный ответ, 3xx — перенаправление, 4xx — ошибка на стороне запроса, 5xx — ошибка сервера.

КодЗначениеКак реагирует поисковик
200 OKСтраница существует и отданаМожет проиндексировать, если нет запретов и это не дубль
301 Moved PermanentlyСтраница переехала навсегдаЗаменяет старый адрес новым, передаёт сигналы
302 FoundВременное перенаправлениеМожет оставить в индексе старый адрес
304 Not ModifiedСтраница не изменилась с прошлого запросаЭкономит ресурсы обхода, переиндексация не нужна
404 Not FoundСтраницы нетСо временем удаляет адрес из индекса, иногда перепроверяет
410 GoneСтраница удалена навсегдаОбычно удаляет из индекса быстрее, чем 404
500 Internal Server ErrorВнутренняя ошибка сервераПовторяет попытки позже, снижает частоту обхода
503 Service UnavailableСервер временно недоступенПонимает, что сбой временный, и возвращается позже

Перенаправления и их влияние на склейку дублей подробно разобраны в уроке «Дубли, canonical и редиректы». Здесь сосредоточимся на ошибках.

404 и 410: когда ошибка — это нормально

На любом живом сайте есть несуществующие адреса: кто-то ошибся в ссылке, товар сняли с продажи, раздел упразднили. Ответ 404 в таких случаях — правильное поведение сервера, и сам факт наличия 404 на позиции сайта не влияет. Вредят другие вещи:

  • Битые внутренние ссылки. Если меню, карточки или статьи ссылаются на несуществующие страницы, робот тратит обход впустую, а посетитель упирается в тупик.
  • Удалённые страницы с трафиком и внешними ссылками. Страница, на которую ссылаются другие сайты, удалена без редиректа — накопленные ею сигналы теряются.
  • Массовые ошибки после изменений. Смена структуры адресов без карты перенаправлений превращает сотни рабочих страниц в 404 одновременно.

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

Что делать с удалённой страницей

  1. Есть близкий аналог — новая модель товара, обновлённая статья, родительская категория с похожими товарами — ставьте 301-редирект на него.
  2. Аналога нет — оставляйте 404 или 410.
  3. Не перенаправляйте все удалённые страницы на главную. Поисковики считают такой редирект мягкой ошибкой, а посетитель не находит того, что искал.

Для интернет-магазинов отдельный вопрос — товары, которых временно нет в наличии. Их не удаляют: страница остаётся с кодом 200, пометкой о наличии, сроками поступления и похожими товарами.

Если товар снят с производства окончательно, решение зависит от того, приносит ли страница трафик и есть ли на неё внешние ссылки. Страницу популярной модели, которую до сих пор ищут, иногда выгоднее сохранить с пометкой «снят с производства» и подборкой замен: посетитель получит полезный ответ, а сайт — трафик по запросам с названием модели. Страницы, которые никто не ищет и на которые никто не ссылается, можно удалить с кодом 404 или 410 или перенаправить на категорию с похожими товарами. Главное — принимать такие решения осознанно и одинаково для всего каталога, а не оставлять их на усмотрение CMS.

Мягкие 404

Мягкой 404 называют страницу, которая по сути не существует или пуста, но сервер отвечает на неё кодом 200. Примеры: несуществующий адрес, на котором CMS показывает пустой шаблон каталога; страница «товар не найден» без правильного кода; пустая категория без единого товара; страница результатов поиска «ничего не найдено».

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

Правильная страница 404

Страница ошибки должна делать две вещи: сообщать поисковику код 404 и помогать посетителю не уйти с сайта.

  • Код ответа — именно 404, а не 200 и не редирект на отдельную страницу «ошибка».
  • Понятный текст о том, что страница не найдена, без технических подробностей.
  • Поиск по сайту, ссылки на главную, основные разделы и популярные товары или материалы.
  • Оформление в стиле сайта с полноценной шапкой и меню.

Совет. Настройте в системе аналитики цель или отчёт по просмотрам страницы 404 с указанием адреса, откуда пришёл посетитель. Так вы будете узнавать о битых ссылках раньше, чем о них сообщат панели поисковиков.

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

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

На время плановых работ сервер должен отдавать код 503 и, желательно, заголовок Retry-After с указанием, когда стоит вернуться. Так поисковик поймёт, что сбой временный. Плохая практика — показывать во время работ заглушку с кодом 200: поисковик может проиндексировать её вместо настоящих страниц.

Ошибки 5xx удобно отслеживать в статистике обхода Вебмастера и Search Console и в логах сервера. Разовый сбой не страшен, но рост доли ошибок — повод разобраться с хостингом и нагрузкой.

Ошибки, которые маскируются под нормальную работу

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

  • Защита от ботов блокирует поисковых роботов. Сервис защиты от атак или настройки файрвола начинают отвечать роботам ошибкой 403 или показывать им проверку «я не робот». Посетители ничего не замечают, а страницы постепенно выпадают из индекса. Проверяйте статистику обхода после любых изменений в защите сайта.
  • Одностраничные приложения. На сайтах, где страницы формируются скриптами в браузере, сервер часто отвечает кодом 200 на любой адрес, а сообщение «страница не найдена» появляется уже после загрузки. Для поисковика все несуществующие адреса выглядят существующими — это массовые мягкие 404.
  • Перенаправление по региону или языку. Сайт определяет город посетителя и отправляет его на региональную версию. Если такое перенаправление срабатывает и для робота, он может не увидеть часть страниц вообще.
  • Нестабильные ответы. Страница то открывается, то отдаёт ошибку из-за перегрузки базы данных в часы пик. Робот попадает на неё в неудачный момент и делает вывод, что сайт ненадёжен.

Чтобы видеть сайт глазами робота, проверяйте коды ответа не только в браузере, но и инструментами, которые запрашивают страницу так же, как поисковик: проверкой ответа сервера в Вебмастере и инструментом проверки URL в Search Console. Они показывают и код, и то содержимое, которое получил робот.

Как искать битые ссылки и ошибки

  • Краулеры. Программы вроде Screaming Frog обходят сайт как робот и показывают все внутренние ссылки на страницы с ошибками и редиректами, а также страницы, с которых эти ссылки стоят.
  • Яндекс Вебмастер. Отчёты о ссылках показывают битые внутренние и внешние ссылки, а статистика обхода — коды ответа, которые получал робот.
  • Google Search Console. В отчёте об индексировании видны группы «Не найдено (404)», «Ошибка сервера (5xx)», мягкие 404 и страницы с переадресацией.
  • Логи сервера. Показывают, какие адреса и с какими кодами запрашивали роботы, — полезно для больших сайтов.

Регулярную проверку кодов ответа удобно включить в общий порядок технического аудита, который описан в уроке «SEO-аудит пошагово».

Что сделать после урока

  • Откройте несуществующий адрес на своём сайте и проверьте, какой код возвращает сервер и как выглядит страница ошибки.
  • Просканируйте сайт краулером и исправьте все внутренние ссылки на страницы с ошибками и редиректами.
  • Найдите в Search Console мягкие 404 и решите для каждой группы: настоящий код 404, наполнение или закрытие от индексации.
  • Выгрузите удалённые страницы с внешними ссылками и трафиком и поставьте на них 301-редиректы на близкие аналоги.
  • Договоритесь с разработчиками, что на время работ сервер отдаёт код 503, а не заглушку с кодом 200.
  • Примите единое правило для удалённых и закончившихся товаров: когда страница остаётся, когда получает редирект и когда отдаёт 404 или 410.
Поделиться:
Telegram MAX ВКонтакте WhatsApp Одноклассники