JavaScript

Устранение проблем с JavaScript, связанных с Поиском

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

Googlebot создан так, чтобы бережно относиться к ресурсам сети. Сканирование — это его главный приоритет, при этом обеспечивается отсутствие ухудшения пользовательского опыта посетителей сайта.
Googlebot и его компонент службы веб-рендеринга (WRS) непрерывно анализируют и выявляют ресурсы, которые не вносят вклад в основной контент страницы, и могут не запрашивать такие ресурсы.
Например, запросы отчетов и ошибок, которые не вносят вклад в основной контент страницы, и другие аналогичные типы запросов не используются или избыточны для извлечения основного контента страницы. Клиентская аналитика может не давать полного или точного представления об активности Googlebot и WRS на вашем сайте.
Используйте отчет о статистике сканирования в Google Search Console для мониторинга активности Googlebot и WRS, а также отзывов на вашем сайте.

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

  1. Чтобы проверить, как Google сканирует и рендерит URL, используйте Тест расширенных результатов или Инструмент проверки URL в Search Console.
    Вы можете просмотреть загруженные ресурсы, вывод консоли JavaScript и исключения, отрендеренное DOM-дерево и другую информацию.

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

  2. Обязательно предотвращайте soft 404 ошибки. В одностраничном приложении (SPA) это может быть особенно сложно. Чтобы предотвратить индексирование страниц ошибок, вы можете использовать одну или обе следующие стратегии:
    • Перенаправление на URL, где сервер отвечает 404 кодом состояния.
    • Добавление или изменение тега meta robots на.

    noindex 200 Когда SPA использует клиентский JavaScript для обработки ошибок, они часто сообщают HTTP-код состояния вместоподходящего кода состояния

  3. . Это может привести к тому, что страницы ошибок будут проиндексированы и, возможно, появятся в результатах поиска. Будьте готовы к тому, что Googlebot отклоняет.

    запросы разрешений от пользователей Функции, требующие разрешения пользователя, не имеют смысла для Googlebot или для всех пользователей. Например, если вы сделаете Camera API
  4. обязательным, Googlebot не сможет предоставить вам камеру.
    Вместо этого предоставьте пользователям возможность получать доступ к вашему контенту без принудительного предоставления доступа к камере.


    Не используйте фрагменты URL для загрузки разного контента. SPA может использовать фрагменты URL (например, https://example.com/#/products) для загрузки различных представлений. Схема сканирования AJAX устарела с 2015 года, поэтому вы не можете полагаться на то, что фрагменты URL будут работать с Googlebot.
    Мы рекомендуем использовать
    History API
  5. для загрузки разного контента в зависимости от URL в SPA.

    Не полагайтесь на постоянство данных (data persistence) для предоставления контента. WRS загружает каждый URL (см. Как работает Поиск Google
    • для получения общего обзора того, как Google обнаруживает контент), следуя серверным и клиентским перенаправлениям, так же как обычный браузер.
      Однако WRS не сохраняет состояние между загрузками страниц:
    • Данные Local Storage и Session Storage очищаются при загрузке страниц.
  6. HTTP-куки очищаются при загрузке страниц.

    Используйте дактилоскопию контента (content fingerprinting), чтобы избежать проблем с кэшированием у Googlebot. Googlebot агрессивно кэширует данные для сокращения сетевых запросов и использования ресурсов. WRS может игнорировать заголовки кэширования. Это может привести к тому, что WRS будет использовать устаревшие ресурсы JavaScript или CSS. Дактилоскопия контента решает эту проблему, включая отпечаток содержимого в имя файла, напримерmain.2bb85551.js .
    Отпечаток зависит от содержимого файла, поэтому при обновлениях каждый раз генерируется новое имя файла. Ознакомьтесь с
    руководством web.dev по долгосрочным стратегиям кэширования
  7. чтобы узнать больше. Убедитесь, что ваше приложение использует обнаружение возможностей (feature detection)

    для всех критически важных API, которые ему необходимы, и предоставляет резервное поведение (fallback) или полифил, где это применимо.
  8. Некоторые веб-функции могут еще не поддерживаться всеми пользовательскими агентами, а некоторые могут намеренно отключать определенные функции. Например, если вы используете WebGL для рендеринга фотоэффектов в браузере, обнаружение возможностей показывает, что Googlebot не поддерживает WebGL.
    Чтобы исправить это, вы можете пропустить фотоэффект или использовать серверный рендеринг для предварительного рендеринга фотоэффектов, что сделает ваш контент доступным для всех, включая Googlebot.


    Убедитесь, что ваш контент работает с соединениями HTTP. Googlebot использует HTTP-запросы для получения контента с вашего сервера. Он не поддерживает другие типы подключений, такие как WebSockets или WebRTC соединения.
    Чтобы избежать проблем с такими подключениями, обязательно предоставьте резервный вариант HTTP для получения контента, используйте надежную обработку ошибок и
    .
  9. обнаружение возможностей.
    Убедитесь, что ваши веб-компоненты рендерятся должным образом. Используйте Тест расширенных результатов или Инструмент проверки URL

    чтобы проверить, содержит ли отрендеренный HTML весь ожидаемый вами контент. WRS сглаживает и объединяетLight DOM и Shadow DOM для анализа. <slot> механизм для легкого содержимого DOM, обратитесь к документации веб-компонента для получения дополнительной информации или используйте вместо него другой веб-компонент.
    Для получения дополнительной информации см. лучшие практики для веб-компонентов.
  10. Если вы используете пейволл (paywall) на базе JavaScript, продумайте его реализацию.

    Некоторые решения с пейволлом на JavaScript включают полный контент в ответ сервера, а затем используют JavaScript, чтобы скрыть его до подтверждения статуса подписки. Это ненадежный способ ограничения доступа к контенту. Убедитесь, что ваш пейволл предоставляет полный контент только после подтверждения статуса подписки.
  11. После исправления пунктов из этого контрольного списка протестируйте свою страницу с помощью Теста расширенных результатов или инструмента проверки URL в Search Console снова.

    Если вы устранили проблему, появится зеленый значок с галочкой и ошибки отображаться не будут. Если вы все еще видите ошибки, напишите в справочное сообщество Search Central.
Alien Road

Как мы это применяем

When a JavaScript site indexes badly, the cause is usually a blocked resource, a timeout or content injected after render. We work through those three in order instead of rewriting the application.

Связанные услуги

, ,
Поделиться

© Copyright 2026 Alien Road. All rights reserved.