Если Google не видит JavaScript-контент, сравните одну конкретную страницу в трёх местах: в исходном HTML сервера, в содержимом после рендеринга браузером и в проверке URL Google Search Console. Найдите первый этап, на котором исчезает нужный текст или ссылка. Отсутствие страницы в поисковой выдаче само по себе не доказывает сбой рендеринга, а видимый в браузере контент не гарантирует индексацию.
Владелец сайта открывает каталог товаров и видит всё: описание, характеристики, ссылку для запроса цены. У разработчика это тоже работает. Однако в проверке Google есть лишь навигация и пустой блок контента. Чтобы разобраться в расхождении, команде нужны общий объект проверки и доказательства по каждому этапу.
Это диагностика доступности контента. Она не заменяет полный SEO-аудит и не является планом оптимизации Core Web Vitals. Быстрая страница может не показывать поисковой системе важный текст, а медленная — делать его доступным. Сначала выясните, что фактически получил конкретный инструмент.
Сканирование, рендеринг и индексация — отдельные этапы
Документация Google разделяет получение URL, выполнение JavaScript и обработку контента для индексации. Google умеет выполнять JavaScript, но это не означает, что пользовательский сеанс любого сайта будет воспроизведён без различий. Заблокированные ресурсы и ответы сервера могут влиять на результат. Основы JavaScript SEO.
Поэтому вопрос «почему страницы нет в Google?» нужно разделить на более точные. Проверен ли именно нужный URL? Был ли он получен? Есть ли нужный абзац в отрендеренном HTML? Не указан ли в отчёте об индексации отдельный фактор, не связанный с JavaScript? Для каждого вопроса нужны свои доказательства и возможное исправление.
Сначала выберите одну проблемную страницу и одну работающую страницу с похожим шаблоном. Запишите полные URL обеих, язык и время проверки. Если в одном тесте используется адрес с фильтром, в другом — основная страница, а в третьем — другой язык, результаты нельзя будет напрямую сопоставить.
Выберите конкретный текст для поиска
Общее впечатление от пустой страницы трудно проверить. Возьмите характерное предложение из описания и одну важную внутреннюю ссылку. Зафиксируйте, где они должны находиться. В таблице проверки отмечайте их наличие на каждом этапе, а не только сохраняйте скриншот всей страницы.
Не выбирайте навигационный текст, повторяющийся по всему сайту. Он может присутствовать в ответе сервера, даже если содержимое товара не загрузилось. Ищите сам видимый текст или элемент ссылки. Наличие данных в скрипте ещё не означает, что они попали в содержимое страницы.
Запишите и ожидаемую версию текста. Если правка в CMS только что опубликована, а в серверном кеше остаётся прежний контент, проблема может быть не в рендеринге. Диагностика должна различать исчезнувший текст и устаревшую, но успешно отображённую версию.
Первое сравнение: HTML сервера и DOM браузера
В исходном HTML проверьте ответ документа до того, как JavaScript дополнил страницу. Панель элементов браузера показывает текущий DOM — структуру, которая могла измениться после выполнения скриптов. Нельзя называть оба представления одним словом «исходник», если на их основе делаются разные выводы.
Если предложение есть в обоих, для его присутствия в первоначальном ответе клиентский рендеринг не требуется. Если оно есть только в DOM, выясните, какое действие его вставляет. Это может быть автоматическая загрузка данных, клик, прокрутка или ранее сохранённый выбор пользователя.
Проверьте также чистый сеанс без входа в систему. В браузере редактора могут сохраняться авторизация, согласия или ранее загруженные данные. Содержимое такого сеанса не является надёжным образцом публичной страницы. Но делать закрытый контент публичным только ради SEO не нужно: сначала определите, какая информация вообще должна быть общедоступной.
Если контент появляется только после действия пользователя, проверьте предположение, заложенное в реализации. Google указывает, что поисковый робот не выполняет клики и прокрутку для загрузки контента. Требования к отложенной загрузке. Доступность важного текста не должна зависеть от такого обязательного действия.
Второе сравнение: что получает проверка Google
В проверке URL Search Console различайте сведения о версии, известной индексу, и проверку текущего URL в реальном времени. Они могут отражать контент в разные моменты. Успешный актуальный тест сам по себе не означает, что страница уже повторно просканирована или обязательно будет проиндексирована. Документация URL Inspection.
Откройте доступный в инструменте отрендеренный HTML и найдите выбранное предложение. Посмотрите скриншот, но не останавливайтесь на нём: изображение не подтверждает состояние всех ссылок или невидимых технических указаний. Сохраните также сведения о незагруженных ресурсах и ошибках, если инструмент их предоставляет.
Если предложение есть в DOM браузера, но отсутствует в HTML после рендеринга Google, ищите различие во входных условиях этих сеансов и в выполнении. Документация Google по устранению проблем рекомендует проверять отрендеренный контент и анализировать ошибки JavaScript. Диагностика проблем JavaScript.
Если предложение присутствует и в проверке Google, нет оснований продолжать утверждать, что этот тест его не видит. Тогда отдельно оценивают статус индексации, выбранный канонический адрес и другие факторы SEO. Исправление рендеринга не является универсальным ответом на любое отсутствие видимости.
Где проверять ресурсы и ошибки
Передайте разработчику конкретный запрос данных, заполняющий отсутствующий блок. Нужно выяснить, завершается ли он, какой получает ответ и продолжает ли после этого работать скрипт. Одна ошибка в общем компоненте может прервать несколько внешне не связанных блоков контента.
Отдельно рассматривайте документ страницы, файл скрипта и запрос данных. Страница может возвращать успешный статус, а загрузка данных товара — завершаться с ошибкой. На экране тогда остаётся визуально корректная оболочка. Записи «сервер работает» недостаточно, если проверен только первый из этих запросов.
Если обнаружено различие в доступе или авторизации, зафиксируйте его как отдельную ветвь диагностики. Эта статья не предполагает отключения защитных механизмов. Нужно определить, заблокирован ли ресурс, необходимый публичному контенту, и как предоставить его, сохранив предусмотренные границы доступа.
Аналогично поступайте с нестабильной загрузкой данных: сохраните пример сбоя, время и технический результат. Успешная повторная проверка не отменяет предыдущую ошибку. Она помогает сузить условия возникновения проблемы. Не выбирайте только удачный скриншот как доказательство исправления.
Ссылки и статусы HTTP нужно проверять отдельно
Кликабельный элемент может не быть ссылкой, которую поисковая система надёжно считывает. Google рекомендует использовать элемент a с атрибутом href, указывающим на реальный адрес. Это относится и к ссылкам, которые JavaScript вставляет в DOM. Ссылки, доступные для сканирования Google.
Проверьте выбранную ссылку в отрендеренном HTML. Есть ли целевой URL? Открывает ли он нужную страницу при прямом запросе, а не только после клика в приложении? Сохраняется ли языковая версия? Так можно обнаружить ситуацию, когда навигация работает на уже открытом сайте, но прямой вложенный адрес отдельно не открывает нужный контент.
Проверьте и несуществующую запись. Если приложение возвращает одну оболочку для всех адресов, а ошибку показывает позже, статус сервера может не отражать состояние страницы. Документация Google подчёркивает важность осмысленных статусов HTTP и объясняет риск soft 404 в приложениях с клиентским рендерингом. Значение статусов.
Эта проверка не требует начинать масштабную перестройку URL. Сначала составьте список: адрес, статус, видимый контент и ожидаемый результат. Исправление должно устранить выявленное несоответствие, не повредив уже правильно работающие страницы.
Дерево диагностических решений
Это предлагаемый порядок работы с одной проблемной страницей, а не результат аудита конкретного сайта.
|
Наблюдение |
Следующая проверка |
Доказательство для разработчика |
|
Текста нет в исходном HTML |
Появляется ли он в DOM без действия пользователя? |
Ответ документа и соответствующий фрагмент DOM |
|
Текст появляется только после клика |
Что именно запускает загрузку данных? |
Последовательность действий и запрос данных |
|
Текст есть в DOM, но отсутствует в тесте Google |
Ресурсы, ошибки, различия сеансов |
Отрендеренный HTML и неудачный запрос |
|
Текст есть в тесте Google |
Версия в индексе и другие причины, связанные с индексацией |
Дата теста и отчёт об индексации |
|
Текст есть, а ссылки нет |
Элемент ссылки и целевой адрес |
Элемент DOM с предусмотренным URL |
|
Проблема повторяется во всём шаблоне |
Общий путь рендеринга |
Сравнение проблемных и корректных страниц |
Для каждой ветви фиксируйте и то, что ещё не проверено. Например: «Текста нет в актуальном тесте, ошибка запроса данных пока не подтверждена». Это точнее для передачи задачи, чем «Google не понимает нашу CMS».
Когда нужно менять архитектуру рендеринга
Если отсутствие контента вызвано конкретной ошибкой, необоснованной блокировкой ресурса или неправильным условием загрузки, сначала оцените целевое исправление. Полная перестройка сайта не является очевидным первым шагом. После правки повторите ту же последовательность проверки и сравните те же фрагменты текста.
Оценка архитектуры становится обоснованнее, если важный публичный контент на многих страницах постоянно зависит от нестабильного выполнения на клиенте. Тогда нужно оценить серверный рендеринг или заранее подготовленный HTML, а также обновление данных и кеширование. Важно понять, когда обновлённая информация попадёт в публичный документ и что произойдёт при сбое.
Google описывает dynamic rendering как временный обходной путь, а не рекомендуемый долгосрочный вариант архитектуры по умолчанию. Ограничения dynamic rendering. Поэтому предложение использовать отдельный путь рендеринга для роботов оценивайте вместе с нагрузкой на сопровождение и соответствием контента.
Для любого архитектурного варианта нужен приёмочный тест. Основной контент и ссылки должны быть в предусмотренном ответе, языковые страницы — сохранять правильное содержимое, а ошибки — отражать ожидаемое состояние. Ни один способ рендеринга сам по себе не обещает место в поисковой выдаче.
Частые вопросы
Google вообще выполняет JavaScript?
Да, но результат конкретной страницы нужно проверить. Важны ресурсы, контент и условия выполнения. Из поддержки технологии нельзя заключить, что описание вашего товара обязательно попало в индекс.
Хорошая оценка производительности доказывает доступность контента?
Нет. Измерение производительности и наличие конкретного текста или ссылки — разные проверки. Сохраняйте оба результата, но не смешивайте их значение. Здесь нужно доказательство доступности контента по выбранному URL.
Что делать после исправления?
Повторите проверку с тем же URL и фрагментом текста, сохраните новый результат и сравните с прежним. Дальнейший статус индексации отслеживайте отдельно. Не утверждайте, что актуальный тест уже подтверждает обновление индекса Google.
Передавайте проблему с проверяемыми доказательствами
Подготовьте URL, отсутствующий фрагмент, исходный HTML, DOM браузера и результат проверки Search Console с датой. Добавьте конкретные ошибки ресурсов, если они найдены, и явно отделите предположения. Такой пакет помогает определить объём исправления, а затем доказать, что оно действительно работает.
Если нужна оценка технического SEO и видимости в ИИ, начните с проблемного URL и скриншота проверки URL. Более широкий круг проверок описан в статье о составе SEO-аудита, а пользовательская производительность — в материале об измерении Core Web Vitals.