Этот гид поможет вам определить и исправить проблемы с JavaScript, которые могут блокировать вашу страницу или определенное содержимое на страницах, работающих с JavaScript, от отображения в поиске Гугл (Google). Несмотря на то что Гугл (Google) Search может обрабатывать JavaScript, существуют некоторые отличия и ограничения, которые важно учитывать при разработке ваших страниц и приложений, чтобы учесть, как роботы Гугл (Google) получают доступ и отображают ваш контент. Наш гид по основам JavaScript SEO предлагает больше информации о том, как оптимизировать ваш сайт с JavaScript для Гугл (Google) Search.
Гугл (Google)bot разработан с целью быть добросовестным пользователем сети. Основной задачей является сканирование, при этом Гугл (Google)bot должен избегать ухудшения опыта пользователей на сайте. Гугл (Google)bot и его компонент Web Rendering Service (WRS) постоянно анализируют и выявляют ресурсы, которые не влияют на основной контент страницы и могут не загружаться. Например, запросы отчетности и ошибок, которые не важны для основного контента, не подлежат загрузке. Используйте отчет о статистике сканирования в Search Console для мониторинга активности Гугл (Google)bot и WRS на вашем сайте в Гугл (Google).
Если вы подозреваете, что проблемы с JavaScript могут блокировать вашу страницу или конкретное содержимое на страницах с JavaScript от отображения в поиске Гугл (Google), следуйте этим шагам. Если вы не уверены, что именно JavaScript является основной причиной, следуйте нашему общему руководству по отладке, чтобы определить конкретную проблему.
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;
}
});
Особое внимание стоит уделить предотвращению ошибок типа "soft 404", особенно если на вашем сайте используется одностраничное приложение (SPA). Для того чтобы ошибки не индексировались поисковыми системами, используйте следующие стратегии:
fetch(`https://api.example.com/page/${id}`).then(res => res.json()).then((page) => {
if (!page.exists) {
window.location.href = '/not-found';
}
});
fetch(`https://api.example.com/page/${id}`).then(res => res.json()).then((page) => {
if (!page.exists) {
const metaRobots = document.createElement('meta');
metaRobots.name = 'robots';
metaRobots.content = 'noindex';
document.head.appendChild(metaRobots);
}
});
Если ваше приложение SPA использует клиентский JavaScript для обработки ошибок, часто возникает проблема, когда ошибочные страницы отвечают статусом 200 вместо нужного кода ошибки.
Гугл (Google)bot не сможет предоставить разрешения на доступ к таким функциям, как использование камеры или других пользовательских разрешений. Если ваша страница требует предоставления таких разрешений для доступа к контенту, предоставьте пользователю альтернативный способ просмотра без необходимости предоставления разрешений.
Ранее применявшийся подход с URL фрагментами (например, https://example.com/#/products) больше не поддерживается для сканирования Гугл (Google)bot, так как с 2015 года схема AJAX-crawling была прекращена. Вместо фрагментов URL рекомендуется использовать History API для динамической загрузки контента в SPA.
Для избегания проблем с кэшированием используйте метод контентного отпечатка (fingerprinting). Это позволит избежать использования устаревших ресурсов JavaScript или CSS, а Гугл (Google)bot всегда будет получать актуальные файлы. Примером может служить использование в названии файлов версии контента, как main.2bb85551.js. Подробности по стратегии долговременного кэширования читайте на web.dev.
Используйте инструмент Rich Results Test или инструмент проверки URL для проверки того, что ваши веб-компоненты правильно рендерятся. Важно помнить, что WRS может не поддерживать некоторые механизмы работы с DOM, например, механизм
После того как вы исправите указанные проблемы, протестируйте страницу с помощью Rich Results Test или инструмента проверки URL в Гугл (Google) Search Console снова. Если проблема решена, вы увидите зеленую галочку, и ошибки не будут отображаться. В случае, если ошибки остаются, обратитесь за помощью в сообщество Search Central.
Для дополнительных вопросов и консультаций вы можете связаться с SEO-компанией "seo.computer" по почте info@seo.computer или через WhatsApp: +79202044461.
id 115