Soft 404: что это и как влияет на SEO

Soft 404 – это программная ошибка сканирования сайта, когда вместо кода 404 (не найдено) сервер отдаёт код 200 (найдено), но реально запрашиваемого контента посетитель-человек или поисковый робот не получают. И вот по итогам абсолютно нерелевантная страница без целевого контента может попасть в поиск или оставаться в поиске – хотя фактически посадочной страницы уже нет.

Soft 404: что это и как влияет на SEO

Ситуация очень напоминает коммуникации со скриптами сервисов поддержки сотовых операторов или банков: обращаясь с конкретным запросом, вы попадаете на робота или человекообразный скрипт. Формально – вам ответили. Фактически – вы не получаете ничего, кроме стресса и чувства тяжёлого недоумения.

Сама по себе проблема софт 404 несколько шире, чем просто неправильный серверный ответ:

  • И поисковый робот, и человек могут получать страницу, где фактически есть какой-то, и даже полезный, контент. Иногда даже не сразу поймёшь, что получил страницу с ошибкой.
  • «Зомби-страница» может быть динамической и трудно обнаруживаемой в обычных условиях. Большую часть времени URL содержит основной контент, но при каких-то условиях URL отдаёт пустые, или «битые», частично сформированные страницы.
  • Страница софт 404 может быть создана искусственно в маркетинговых целях: товара уже нет в наличии, а продавцу не хочется терять лид, и он вместо честной 404 или 410 (удалено навсегда) предлагает страницу с альтернативами, поиском по товарам, либо просто настраивает постоянное перенаправление куда-то ещё – например, на главную страницу сайта.
  • Слишком малый объём контента на странице может стать причиной того, что поисковая система определит страницу как «битую».

Ошибки типа «программный 404» могут формироваться как сервером или CMS (системой управления контентом сайта), так и пользовательским браузером: что-то важное не удалось загрузить полностью.

Слева - то, что должно было выводиться. Справа - то, что вывелось после рендеринга JS. Чистая софт 404.
Слева - то, что должно было выводиться. Справа - то, что вывелось после рендеринга JS. Чистая софт 404.

Настоящей проблемой это становится на больших масштабированных сайтах, полноценно мониторить которые сложно. Мало того, что эти страницы отдают код «200» («Доступно»), так и утрачивать контент они могут только периодически – бессистемно, например, при перегруженности сервера.

Причины возникновения

Вот несколько наиболее распространенных причин возникновения soft 404 ошибки.

  • Проблемы на уровне CMS и настроек роутинга на её уровне. Фактически вы попадаете на кастомную страницу ошибки 404, но сервер отдаёт код 200 (найдено). Чаще всего это случается в результате чисто технических ошибок при работе с внутренней архитектурой системы.
  • После удаления релевантной страницы вы не отдаёте «честный» код 410 (удалено навсегда), или 404 (не найдено), а настраиваете редирект – постоянный 301 или временный 302 на какую-то несоответствующую страницу. С помощью редиректа можно склеить 2 URL. Обычно так делают, чтобы не потерять «ссылочный вес», или для обнуления «плохих» метрик (например, поведенческих). Однако если поисковая система не видит хоть какого-то совпадения контента страниц – переклейки не произойдёт.
  • Ошибки в конфигурации сервера. Сервер не может найти физический файл и отдаёт 404. Файл фактически есть и доступен при каких-то условиях – но не всегда.
  • Сервер попросту перегружен, и вместо полноценной страницы отдаёт сильно упрощённую, облегченную версию страницы, где не содержится полный контент. «Выловить» такую проблему сложно, она не воспроизводится всё время, а только в особых ситуациях.
  • Полноценная страница не может быть сформирована по техническим причинам (не выводятся какие-то блоки, фрагменты контента). Другой пример: пустая товарная категория, которую не снимают с публикации, хотя никакие товары туда больше не выводятся. Логичнее было бы вывести всё тот же товарный листинг, пусть и с пометками «Нет в наличии» или «Сообщить о поступлении», но на этом прокалываются даже серьёзные маркетплейсы.
  • На сайте проводятся профилактические работы: ранее проиндексированный URL доступен, но вместо контента выводится уведомление типа «На профилактике», «На сайте проводятся работы» и т.п.
  • Отдельным типом софт 404 можно считать проблемные канонические URL: canonical – своего рода софт 301. Он сообщает поисковому роботу, что нужно перейти на другую целевую страницу. Если всё сделано правильно, неканоническая страница будет подклеена к канонической. Однако если контент страниц слишком разный, или каноническая страница недоступна по каким-то причинам – получится всё та же софт 404.
Уже привычный пример: по запросу "нож татьянка №3" на третьей позиции - "Озон", где ничего похожего нету. URL перенаправляет почему-то на "наборы для выжигания". Всё это не мешает маркетплейсам занимать топ выдачи вместо реально релевантных сайтов.
Уже привычный пример: по запросу "нож татьянка №3" на третьей позиции - "Озон", где ничего похожего нету. URL перенаправляет почему-то на "наборы для выжигания". Всё это не мешает маркетплейсам занимать топ выдачи вместо реально релевантных сайтов.

Когда стоит бить тревогу

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

  • Рост отказов. Чаще всего в этом случае владельцы сайтов подозревают ботный трафик. Да, часто причина появления отказного трафика – именно в поведенческих ботах. Но не надо спешить делать выводы: возможно, речь о реальных людях, потенциальных покупателях, которые зашли на сайт – и не получили ожидаемого контента.
  • Выраженные колебания позиций и трафика. Робот, периодически натыкаясь на софт 404, может счесть страницу недостаточно качественной, а на больших объёмах – и весь сайт. Незачем ранжировать некачественный ресурс, если есть выбор.
  • Сообщения из консолей поисковых систем для вебмастеров, в том числе о дублях – тех страниц, которые дублями точно не являются. В последнее время этим болен даже Яндекс: фактически страницы уже нет, и он склеивает URL с другой «битой» страничкой.

Простой пример: хостинг не оплачен, хостер сайт блокирует. По заходу на любой адрес сайта хостинг выводит стандартную служебную страничку, ответ сервера – 200. Яндекс же не просто считает страничку существующей, он может вернуть её в выдачу вплоть до топ-10. Ну, а что? История-то у URL хорошая, код 200, а дедушка старый, ему всё равно.

Сайт ещё не в доступе, а уже вторая позиция в выдаче. Вот что значит умение делать сайты лучше!
Сайт ещё не в доступе, а уже вторая позиция в выдаче. Вот что значит умение делать сайты лучше!

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

Блокировка сайта хостером - топам не помеха! Яндекс прекрасно видит, что контент URL недоступен, но старая любовь не ржавеет.
Блокировка сайта хостером - топам не помеха! Яндекс прекрасно видит, что контент URL недоступен, но старая любовь не ржавеет.

Как выявить проблему

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

Гораздо чаще речь идёт о смене требований к странице или даже хосту по определенному запросу, либо о смене характера запроса. Если на этом уровне не выявлено явных отклонений – надо уточнить, что в принципе получают посетители, обращаясь к странице. Возможно, речь идёт о росте ошибок софт 404.

Сервисы аудита сайтов

Первое, что стоит сделать для выявления проблемы: заряжаем любой парсер, предназначенный для технического анализа – Screaming Frog SEO Spider, SiteAnalyzer и т.п., и проверяем коды ответа просевших посадочных страниц. С учетом того, что сейчас оцениваются не отдельные посадочные страницы, а целые узлы веб-графа – лучше оценивать сайт целиком. Возможно, речь идёт о проблемах с поддерживающими узлами, этот момент тоже нужно понимать.

В этом отношении проблему могут представлять файлы JS, CSS или файлы инклюдов: поисковый робот не может временно получить к ним доступ, и если эти файлы в явном виде связаны с выводом контент – страница будет получена только в усеченном, неполном виде. Если это воспроизводится периодически – вы получите софт 404.

В этом случае тайтл на выдаче малость привирает: контент на страничке есть. Однако такой тайтл может стать причиной того, что поисковик распознает soft 404.
В этом случае тайтл на выдаче малость привирает: контент на страничке есть. Однако такой тайтл может стать причиной того, что поисковик распознает soft 404.

Крайне желательно оценить нынешнее состояние страницы с историческими данными: возможно, вы удалили часть контента, либо эта часть стала недоступной по другим причинам. Тот же Screaming Frog позволяет сравнивать два разных файла обхода. Если страница выпала из ранжирования – возможно, поисковый робот больше не может добраться до важного контентного блока, и определявшего позиции сайта в топе.

В актуальной версии Screaming Frog SEO Spider есть инструмент, позволяющий выявить ошибки soft 404 по наличию текстового контента. Фактически речь о сопоставлении контента страницы со списком типовых сообщений страницы «Не найдено». Добавьте в этот список текст своей страницы 404. Примечание. При наличии на странице цифр «404» и текста «Не найдено» инструмент может показывать ложное срабатывание. Но точно также может ложно сработать и поисковая система.

Не так давно в Screaming Frog Seo Spider появилась вот такая вкладка. С её помощью можно найти странички, отдающие код 200, но выводящие текст страницы 404.
Не так давно в Screaming Frog Seo Spider появилась вот такая вкладка. С её помощью можно найти странички, отдающие код 200, но выводящие текст страницы 404.

Хороший способ выявить soft 404 – оценка нечетких или полных дублей. Если какая-то страница имеет десятки и сотни дублей по сайту – оцените контент этих страниц. Бывает, что речь об очень похожих товарных карточках, где отличаются только название и цена – эта проблема решается микроразметкой и добавлением уникального в рамках сайта контента. А бывает, что речь о страницах, где в зоне основного контента выводится фраза «Ничего не найдено», а всё остальное – блок похожих товаров, сквозных отзывов, товаров того же производителя, меню, - то есть просто сквозные шаблонные элементы.

Оценить стоит и дубли по тайтлам и метатегам. Часто встречается ситуация, когда тайтлы и мета обновляются средствами JS, и дубли возникают потому, что шаблонизатор не сгенерировал того, что должен. Это признак проблем на уровне CMS, и надо оценивать, что там с контентом на странице. Вполне возможно, что и вместо целевого контента выводится какая-то служебная ерунда или вообще ничего.

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

Более глубокая и точная проверка основана на анализе серверных логов access_log: это журнал, куда вносятся данные о всех событиях входящего трафика. Работать с логами непросто: на сайте с хорошим трафиком общий объём журналов составляет гигабайты данных. Для работы вам понадобится либо навык работы с Python, либо специализированное приложение для работы с логами – например, Screaming Frog Log File Analyzer.

Работать с Log File Analyzer очень просто: создаёте проект, выбираете, какие заходы анализировать (пользовательские браузеры, поисковых роботов или всё сразу), и импортируете логи. После этого вам будет доступны удобные таблички с заданными событиями за период.

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

После загрузки логов можно выбрать заданный URL, клиента – и вы получите все необходимые подробности по взаимодействию со страницей. Явно проблемные случаи – когда клиент системно получает странички, чей вес периодически значительно отличается от обычного. Речь в таких случаях явно идёт либо о страницах с неполным контентом, либо о служебных страничках вообще без контента.

За день размеры странички, отдающей код 200, значительно менялись. Повод для дополнительных проверок.
За день размеры странички, отдающей код 200, значительно менялись. Повод для дополнительных проверок.

Если вы обнаружили такое – смотрите на динамику. Речь может идти о постоянно воспроизводимых по какому-то паттерну ошибках, и этот паттерн может послужить ответом на все вопросы. Например, хостер регулярно в час ночи перезагружает свои сервера, или речь о выгрузке из 1С, или конкурент в это время суток регулярно парсит ваши данные, нагружая сервер.

Панели вебмастеров поисковых систем

Используйте данные от поисковой системы напрямую. В этом отношении незаменим штатный инструмент Google - Search Console.

Открываем раздел «Индексирование – Страницы» и смотрим отчёт, блок ошибок. Здесь традиционно могут выводиться следующие ошибки:

  • Отправленная страница выглядит ошибкой софт 404. В этом случае URL ещё не помечен, как программная 404, возможно, проблема носит временный характер.
  • Soft 404. Это - прямые кандидаты на деиндексацию, если уже не выброшены из индекса.
  • Не найдено (404). Страницы такого типа деиндексируются, но остаются в зоне внимания гуглобота

Другой штатный инструмент — это проверка заданных URL. Введите проблемный URL и отправьте его на переобход. По завершению можно оценить, что конкретно получил гуглобот - HTTP-ответ сервера, контент, точечные запросы ресурсов и т.п.

Как устранить ошибки soft 404

Устранять ошибки типа софт 404 нужно в зависимости от типа сайта, характера ошибки и ожидаемого результата (деиндексации несуществующего уже URL, склеивания «битого» URL с актуальным, устранения чисто технической ошибки).

  • Проверьте, достаточно ли на странице контента. Оцените количество запросов, отправляемых страницей серверу, и проверьте их доступность. Возможно, проблема связана с общей оптимизацией шаблона страницы: робот не может получить вовремя системные файлы, ответственные за рендеринг страницы. Решайте вопрос с техническим специалистом или администратором сервера. Сюда относятся проблемы с конфигурацией веб-сервера, приложения или базы данных, которые приводят к ошибкам.
  • Если фактически страница удалена, и вы настроили перенаправление на несоответствующую страницу, чтобы сохранить «ссылочные веса» - возможно, стоит снять редирект или настроить перенаправление на максимально релевантную страницу сайта. Либо, как вариант, восстановить страницу, если это возможно. Во всех прочих случаях лучше отправить ответ 404 или 410 (удалено окончательно). Нельзя склеить несклеиваемое.
  • Уточните, что с контентом на потенциальной странице в статусе софт 404. Это может быть «битый» контентный блок, слишком мало уникального в рамках сайта контента, а может быть, речь реально идёт о странице без контента: например, на товарную категорию больше вообще ничего не выводится – нет товаров. Страница, где робот слишком часто не обнаруживает того, что ищет, выпадет из ранжирования, а со временем – и из индекса.

Заключение

  • Поисковая система не будет тратить ресурсы на сайт, который считает неоптимизированным. Чем больше проблем на сайте – тем выше вероятность, что сайт чисто технически выпадет из списка приоритетных для поиска. Большие сайты уровня «Озон» могут позволить себе ошибки такого рода благодаря своему статусу и популярности у пользователей. Другие сайты – нет.
  • Программная ошибка 404 не относится к HTTP-кодам: сервер отдаёт 200 или 204, при этом запрашиваемого контента на странице нет. Это усложняет диагностику ошибки чисто технически: вам нужно сопоставить код ответа и контент страницы. Дополнительная проблема – ошибка может иметь динамический статус: большую часть времени с доступностью полный порядок, ошибка проявляется только при некоторых условиях.
  • Инструменты вебмастеров в настоящее время редко сообщают о проблемах такого рода. Однако это не значит, что и проблемы не существует. Нынешние алгоритмы очень многое оставляют «под капотом», обобщают и не склонны уточнять причины фильтрации. «Делайте сайт лучше» - а софт 404 можно считать меткой крайней нерелевантности.
  • Практика перенаправления старых URL на существующий, но нерелевантный, может привести к появлению ошибки софт 404, если конечная страница в цепочке редиректов слишком опосредованно связана с запросом. Страницу «Прямые диваны с выдвижным ящиком» можно перенаправить на «Прямые диваны» – но точно не стоит перенаправлять в «Каталог» или на главную страницу сайта.
  • Не экономьте на данных: файлы серверных логов могут быть очень объёмными, но им нет замены для диагностики, если речь идёт о технических вопросах.
2424
12 комментариев

Это очень интересная статья. Ради такого я и захожу в раздел SEO.

2
Ответить

О, пожалуй наиболее подробная статья на эту тему! Респект, разложил всё по винтикам)

1
Ответить

Часто стало попадаться - что на сайтах, что в выдаче. С одной стороны - всё больше сайтов-самописов на фреймворках. С другой - отказ поисковиков от всего в пользу пользовательских/поведенческих сигналов, кмк, основная причина косячья на выдаче.

Ответить

Встречалось такое на клиентских сайтах на Битрикс как не странно. Страницы каталога/товаров, но не отдавался 404.

1
Ответить

В чистом виде в Битрикс чаще всего и получается.

Ответить

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

1
Ответить