SSR или CSR: как способ рендеринга влияет на SEO
От того, где собирается страница — на сервере или в браузере, — зависит, что увидит поисковый робот. Для сайта, которому нужен трафик из поиска, это не деталь реализации, а одно из первых архитектурных решений.
Три способа собрать страницу
Клиентский рендеринг (CSR). Сервер отдаёт почти пустой HTML и набор скриптов, а страница собирается уже в браузере. Так устроено большинство одностраничных приложений. Человеку удобно, но робот на первом шаге видит пустую оболочку.
Серверный рендеринг (SSR). Сервер собирает готовый HTML на каждый запрос. Робот получает весь текст сразу, как и обычный посетитель.
Статическая генерация (SSG). HTML собирается один раз при публикации и лежит как готовый файл. Это самый быстрый и самый простой для робота вариант, если содержимое страниц не меняется между запросами. Именно так устроен этот сайт.
Что видит поисковый робот
Яндекс обрабатывает JavaScript ограниченно и с задержкой: страница, текст которой появляется только после выполнения скриптов, может попасть в индекс пустой или частично. Google выполняет скрипты лучше, но делает это вторым этапом, и между обходом и отрисовкой может пройти время. Поэтому сайту, который важен в обоих поисковиках, нельзя рассчитывать на то, что робот соберёт страницу так же, как браузер.
Проверить, что видит робот, просто: откройте исходный код страницы
(view-source: в адресной строке) или выполните запрос без браузера. Если
основного текста там нет, это CSR без серверной части.
Что выбрать
- Статический сайт или SSG — для визиток, блогов, каталогов услуг и большинства корпоративных сайтов. Быстро, дёшево в хостинге, безопасно.
- SSR — когда содержимое зависит от запроса: личные кабинеты, персональные выдачи, сильно меняющиеся данные.
- CSR — для закрытых частей: кабинет после входа, админка. Робот их не индексирует, и там рендеринг не влияет на SEO.
Гибрид — тоже нормальный путь: страницы, которые должны попасть в поиск, собираются заранее или на сервере, а интерактивные части подгружаются в браузере.
Если сайт уже на CSR
Переписывать всё сразу не нужно. Начните с ответа на вопрос, какие страницы должны быть в поиске: обычно их не больше десятка типов. Их переводят на серверный рендеринг или предварительную сборку, а остальное оставляют как есть. Альтернатива — «пререндеринг» для роботов, но поддерживать два пути отдачи сложнее, и это чаще временная мера.
Что делаем мы
При разработке сайта мы закладываем серверную или статическую сборку с самого начала: контент в первичном HTML, один канонический адрес у страницы, разметка Schema.org в шаблоне. Это дешевле, чем переделывать сайт, когда выясняется, что страницы не индексируются.
Как выбрать, не ошибившись
Задайте себе три вопроса. Должна ли страница попасть в поиск? Если да, ей нужен готовый HTML. Меняется ли её содержимое между посетителями? Если нет, хватит статической сборки. Нужна ли ей сложная интерактивность? Тогда ту часть, что действительно интерактивна, оставьте в браузере, а текст и заголовки — в готовом HTML. Такой гибрид обычно дешевле и быстрее любой крайности.
