Прежде всего вам необходимо настроить свой веб-сервер в качестве обратного прокси-сервера, чтобы он указывал на 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