Статический рендеринг на стороне сервера или динамический рендеринг на стороне сервера - PullRequest
0 голосов
/ 04 февраля 2019

Чтобы сделать сайт оптимизированным для SEO, мы должны реализовать Server side rendering приложения в Angular.

. Я прочитал много статей о рендеринге на стороне сервера.Во время чтения я узнаю о двух типах рендеринга.

1.Статический рендеринг на стороне сервера 2. Динамический рендеринг на стороне сервера

Но что это значит?Я не понял этого из статей, которые я прочитал.Все еще путают, какой выбрать для моего приложения.

Так что я просто хочу знать, для какого типа приложения / веб-сайта мы должны использовать Static, а для какого типа приложения / веб-сайта мы должны использовать динамический рендеринг на стороне сервера.

1 Ответ

0 голосов
/ 04 февраля 2019

Как вы говорите, существует два способа рендеринга приложений Angular на сервере.Вот разница, а также примеры, иллюстрирующие их использование.

Статический рендеринг на стороне сервера

По сути, это относится к процессу генерации предварительно отрендеренных страниц для вашего приложения, которые затем можно размещать статически.используя сервис, такой как Amazon S3 .Тот факт, что эти файлы являются статическими, также означает, что их будет легко обслуживать из CDN.Вы просто создаете файлы на своем локальном компьютере или в среде CI, а затем отправляете туда, где находится ваш хост.Вот краткое руководство по Предварительным рендерингам приложений Angular .

В конечном итоге каждый маршрут, который вы определили в своем приложении Angular, приводит к HTML-файлу, включая любой динамически генерируемый контент, который отображается при загрузке.Это очевидно хорошо работает с поисковыми системами и сканерами.Когда браузер загружает одну из ваших страниц, он сразу получает предварительно отрендеренный ответ, тогда Angular запускает все динамическое поведение, определенное в ваших контроллерах, сервисах и т. Д.

Пример:

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

Динамический рендеринг на стороне сервера

Возможно, вы уже догадались, это особенно полезно, когда выиметь динамические маршруты (например, /products/:productId).Используя Angular Universal, мы можем запустить сервер Express.js в Node, который будет динамически отображать каждую страницу по запросу клиента.Это занимает немного больше времени, но оно того стоит!

Пример:

Вы создали магазин и каждый раз, когда добавляете новый продукт, вы хотите, чтобы онбыть доступным для Google и лайков для индексации.Вы также хотите, чтобы он хорошо отображался в средствах просмотра Open Graph, таких как Facebook.

...