Развертывание рендеринга на стороне сервера Angular 7 в Ubuntu 16.04 LTS - PullRequest
0 голосов
/ 17 декабря 2018

Я создал проект Angular 7 с рендерингом на стороне сервера с использованием универсального инструмента.

Без проблем работает на локальном компьютере, и папка dist, включая папку сервера и браузера и server.js

Вопрос в том, как использовать это на сервере Ubuntu с помощью apache, и приложение будетв подпапке и как мне сохранить работоспособность приложения, если я закрыл терминал?

Я много искал и использовал pm2, чтобы приблизиться к процессу, но я не нашел, как получить доступ к сайту.

Ответы [ 2 ]

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

Проблема в том, что я использовал порт apache, когда я изменил порт и открыл новый порт через брандмауэр, работает нормально.

0 голосов
/ 17 декабря 2018

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

Для Nginx конфигурация может выглядеть следующим образом:

location / { 
    proxy_pass http://localhost:8080;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
}

Убедитесь, что вы установили для proxy_pass тот же порт, который определен в файле сервера вашего узла.

Затем вы должны скопировать каталог dist на ваш веб-сервер.Затем вы можете запустить сервер узла в фоновом режиме с pm2 , как вы уже правильно упомянули:

npm install pm2 -g
pm2 start /var/www/html/server.js // this is the entry point of your universal server

Это запустит сервер узла.Вы можете проверить, правильно ли реагирует Node, запустив curl localhost:8080.Если при этом возвращается исходный код вашего приложения, все готово.

Наконец, после перезапуска веб-сервера ваше приложение Angular должно быть доступно извне, если вы позвоните по IP-адресу или имени хоста вашего сервера.


Редактировать - Чтобы полностью включить прокси на вашем сервере Apache, выполните следующие команды:

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_balancer
sudo a2enmod lbmethod_byrequests
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...