Размещение проекта на статическом хостинге
Ещё один способ разместить наш проект на продакшн-сервере — это использовать генерацию статических файлов. Этот метод называется Static Hosting, и он подходит для статичных хостингов, где нет возможности развернуть окружение Node.js.
Поддержка SSR
Обратите внимание, что данный метод также поддерживает рендеринг с помощью SSR (server-side rendering), чтобы сайт был доступен для поисковых систем. Однако в этом способе можно сгенерировать проект так, чтобы не было поддержки SSR, и он будет работать немного быстрее.
Команда для генерации
Для того чтобы сгенерировать проект таким образом, есть специальная команда generate
, которую мы с вами и выполним. Если мы посмотрим наш package.json
, там есть такая команда, которую сейчас выполним:
npm run generate
Сгенерированные файлы
Обратите внимание, что у нас в проекте теперь появилась папка с HTML-файлами, по которым мы можем обращаться к нашему проекту. Если открыть файл index.html
в браузере, мы увидим главную страницу. Если перейти в папку parent/test/index.html
, то соответственно увидим тестовую страницу.
Таким образом, роуты работают в скомпилированном виде. Генерация происходит не как отдельная серверная служба, а как статические HTML-файлы. То есть, у нас уже готовая HTML-разметка со скриптами, которая представляет собой итоговый проект.
Загрузка на хостинг
Теперь эти файлы, которые находятся в папке public
, можно закачать на любой хостинг, где нет поддержки окружения Node.js. На статичном хостинге они будут доступны, и в них уже будет наш серверный рендеринг.
Автоматическая HTML-разметка
Обратите внимание на систему роутинга: например, файл parent/test/index.html
. В сгенерированной разметке у нас уже есть готовая HTML-структура, которая подставляется автоматически при генерации контента страницы. По сути, это замена server-side rendering, и поисковые системы уже видят разметку для индексации.
Преимущества метода
Этот метод является более простым, чем настройка серверного окружения, и вы можете его использовать для быстрой публикации проекта.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Email - зарегистрироваться / войти