Перейти к содержимому

← Все статьиСайты и SEO

· ~2 мин чтения

Почему сайт на JS-фреймворке может быть невидим для Яндекса и Google

Сайт может выглядеть нормально в браузере и при этом наполовину отсутствовать для поисковика — не из-за низкого качества контента, а из-за того, как этот контент вообще появляется на странице. Проблема техническая и распространённая: современные сайты часто строятся на JS-фреймворках (React, Vue и аналогах), и часть контента рендерится не на сервере, а в браузере пользователя, уже после загрузки страницы.

Краулер — не то же самое, что браузер человека

Когда человек открывает сайт, браузер загружает HTML, подгружает JavaScript и выполняет его — на экране появляются блоки, которых в исходном HTML могло не быть вовсе. Поисковый робот в базовом сценарии получает тот же HTML-ответ сервера, но не обязан вести себя как полноценный браузер: у него есть бюджет на рендеринг JavaScript, он не бесконечен, и не по каждой странице сайта выполняется полный проход со сборкой интерфейса.

Как это выглядит на практике

Механика простая: сервер в ответ на запрос страницы отдаёт почти пустой HTML — обычно один <div>-контейнер — а весь реальный контент (тексты, цены, FAQ, отзывы, сравнения) дорисовывается JavaScript уже в браузере. Если часть секций страницы специально помечена «не рендерить на сервере» — это осознанное техническое решение, которое ускоряет первую отрисовку для пользователя, но забирает у краулера ровно тот контент, что должен был убедить его проиндексировать страницу.

Почему это не абстрактный риск

Google умеет выполнять JavaScript при индексации, но делает это вторым проходом, с задержкой и не гарантированно по каждой странице крупного сайта. У Яндекса возможности рендеринга JS исторически слабее и менее предсказуемы. На практике это означает: часть контента может индексироваться с опозданием на недели, часть — не попасть в индекс вообще, если робот решит, что страница пустая уже на первом проходе.

SSR и пререндер как решение

Серверный рендеринг (SSR) переворачивает схему: сервер сам выполняет рендеринг перед тем, как отдать ответ, и краулер получает полностью готовый HTML с текстом внутри — без необходимости выполнять JavaScript, чтобы увидеть контент. Современные фреймворки (например, Next.js) поддерживают это на уровне архитектуры: страница может рендериться на сервере целиком, а интерактивные компоненты — догружаться уже в браузере, не пряча при этом основной текст.

Что стоит проверить у себя

Быстрая проверка без специальных инструментов — открыть исходный код страницы (Ctrl+U) и поискать в нём текст, который виден на экране: FAQ, описание услуг, цены. Если текста там нет — его не увидит и краулер при первом проходе. Это не диагноз всему сайту, но повод для технического SEO-аудита и, если причина в архитектуре, для пересборки затронутых страниц с упором на SSR при разработке корпоративного сайта.

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

Читайте также

Ещё по теме «Сайты и SEO»

← Все статьи блога · Кейсы