@nomta

Что происходит при SSR?

И что же все-таки происходит при SSR?

Что-то, сколько не ищу, не могу найти внятное объяснение, как все это работает. Страницы рендерятся на сервере, но при переходах по ссылкам перезагрузки не происходит, и не аякс, как же тогда?

Допустим, у меня блог. В нем есть базовая разметка - хедер, сайдбар со ссылками и т.д., и я не хочу, чтобы это все перезагружалось каждый раз. А есть собственно контент - статьи и комментарии к ним, их много, нужно, чтобы при переходах загружались только они и в то же время чтобы они нормально индексировались поисковиками. Так вот, SSR решает эту задачу? И если да, то как именно?
  • Вопрос задан
  • 33 просмотра
Решения вопроса 1
@rPman
Нет,
server side rendering
и
single page web app
Это в корне противоположные подходы по написанию приложения.

В первом - абсолютно все (за исключением только что анимации) формируется на сервере бакэндом на любой чих, т.е. значение перменных состояния (например значения фильтров в поисковом запросе) передаются в виде ссылки на страницу, закодированные с помощью & = и %код_символа. Благодаря этому возможен переход по истории действий средствами браузера, так как каждое изменение состояния - новая ссылка

Во втором подходе используется обратный процесс, все что относится к интерфейсу переносится на клиентскую сторону, т.е. страница формируется (или только правится, если это шаблон) с помощью javascript, состояние сохраняется в локальных переменных, а данные запрашиваются с помощью ajax в компактной форме (бакэнд выдает простенький json). В этом подходе с точки зрения браузера все приложение это одна страница, и переходы по истории вперед назад не работают. Но есть хак, состояние можно кодировать в ссылке на страницу, с использованием анчор #. Это стандарт, позволяет задавать точки перехода по странице (например параграфы или страницы), без перезагрузки всей страницы, но с поддержкой истории переходов.

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

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы