Решение проблем с JavaScript, влияющих на поиск в Гугл (Google)

Решение проблем с JavaScript, влияющих на поиск в Гугл (Google)

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

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

Как устранить ошибки с JavaScript, которые мешают индексации в поиске Гугл (Google)

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

  • Для проверки того, как Гугл (Google) обходит и рендерит URL, используйте инструмент для проверки Rich Results или инструмент проверки URL в Search Console. Вы сможете увидеть загруженные ресурсы, вывод консоли JavaScript, исключения, отрендеренный DOM и другую информацию.

Как мониторить ошибки JavaScript на вашем сайте в Гугл (Google) Search

Также рекомендуем собирать и проверять ошибки JavaScript, которые возникают у пользователей, включая Гугл (Google)bot, на вашем сайте, чтобы выявить возможные проблемы, влияющие на рендеринг контента. Вот пример того, как можно логировать ошибки JavaScript, которые фиксируются в глобальном обработчике onerror:

window.addEventListener('error', function(e) {
 var errorText = [
 e.message,
 'URL: ' + e.filename,
 'Line: ' + e.lineno + ', Column: ' + e.colno,
 'Stack: ' + (e.error && e.error.stack || '(no stack trace)')
 ].join('
');
 var DOM_ID = 'rendering-debug-pre';
 if (!document.getElementById(DOM_ID)) {
 var log = document.createElement('pre');
 log.id = DOM_ID;
 log.style.whiteSpace = 'pre-wrap';
 log.textContent = errorText;
 if (!document.body) document.body = document.createElement('body');
 document.body.insertBefore(log, document.body.firstChild);
 } else {
 document.getElementById(DOM_ID).textContent += '

' + errorText;
 }
 var client = new XMLHttpRequest();
 client.open('POST', 'https://example.com/logError');
 client.setRequestHeader('Content-Type', 'text/plain;charset=UTF-8');
 client.send(errorText);
});

Как избежать ошибок "мягких 404" в Гугл (Google)

Для предотвращения ошибок "мягких 404" в одностраничных приложениях (SPA) это может быть особенно сложно. Чтобы избежать индексации страниц с ошибками, можно использовать одну или обе из следующих стратегий:

  • Перенаправление на URL, где сервер отвечает с кодом состояния 404.
  • Добавление или изменение мета-тега robots с атрибутом noindex.

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

Как справляться с запросами на разрешение пользователя в Гугл (Google)

Ожидайте, что Гугл (Google)bot будет отклонять запросы на разрешение пользователя. Функции, требующие разрешения от пользователя, не имеют смысла для Гугл (Google)bot, так как ему не предоставляется камера или другие устройства. Вместо этого обеспечьте доступ к контенту без принудительного разрешения пользователя на использование этих устройств.

Не используйте фрагменты URL для загрузки различного контента в Гугл (Google)

Одностраничные приложения (SPA) могут использовать фрагменты URL (например, https://example.com/#/products) для загрузки различных представлений. Однако схема "AJAX-crawling" была устаревшей с 2015 года, поэтому нельзя полагаться на фрагменты URL для работы с Гугл (Google)bot. Рекомендуем использовать History API для загрузки различного контента в SPA.

Не полагайтесь на сохранение данных для обслуживания контента в Гугл (Google)

WRS загружает каждый URL (смотрите раздел о том, как работает Гугл (Google) Search), следуя серверным и клиентским перенаправлениям, как обычный браузер. Однако WRS не сохраняет состояние между загрузками страниц:

  • Данные Local Storage и Session Storage очищаются при загрузке новой страницы.
  • HTTP Cookies очищаются при загрузке новой страницы.

Используйте отпечатки контента для предотвращения проблем с кэшированием в Гугл (Google)

Гугл (Google)bot активно кэширует контент, чтобы снизить количество сетевых запросов и загрузку ресурсов. WRS может игнорировать заголовки кэширования. Это может привести к использованию устаревших JavaScript или CSS ресурсов. Для избегания этой проблемы используйте отпечатки контента, включая часть имени файла, например main.2bb85551.js. Отпечаток зависит от содержимого файла, поэтому обновления создают новый файл с другим именем.

Обеспечьте поддержку всех критичных API и обратитесь к Гугл (Google)

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

Подключение к вашему сайту через HTTP для корректной работы в Гугл (Google)

Гугл (Google)bot использует HTTP-запросы для получения контента с вашего сервера. Он не поддерживает другие типы подключений, такие как WebSockets или WebRTC. Для того чтобы избежать проблем с такими соединениями, предоставьте HTTP-резерв для получения контента и используйте надежную обработку ошибок.

Проверка отображения веб-компонентов для корректного рендеринга в Гугл (Google)

Убедитесь, что ваши веб-компоненты правильно рендерятся. Используйте инструмент Rich Results Test или инструмент проверки URL в Search Console, чтобы проверить, что -код отображает весь ожидаемый контент. WRS упрощает работу с light DOM и shadow DOM. Если веб-компоненты не используют механизм для light DOM контента, проконсультируйтесь с документацией веб-компонента или используйте другой веб-компонент.

Повторная проверка страницы в Гугл (Google) после устранения проблем

После того как вы исправили все элементы из этого чек-листа, протестируйте вашу страницу с помощью Rich Results Test или инструмента проверки URL в Search Console. Если ошибка была устранена, появится зеленая галочка, и ошибки больше не будут отображаться. Если ошибки остаются, обратитесь в сообщество поддержки Search Central.

Если у вас есть вопросы, вы можете связаться с нашей SEO компанией "seo.computer" по email: info@seo.computer, WhatsApp: +79202044461.

ID 87

Отправьте заявку и мы предоставим консультацию на SEO продвижение вашего сайта