如何从apache2 VPS在子域上托管Node.js应用程序?

时间:2020-01-17 16:47:04

标签: javascript node.js apache express vps

因此,我有一个Node.js应用程序,我想使用VPS将其托管在子域中。我的VPS当前正在运行apache2,而我的Node.js应用使用Express。我已经尝试过Phusion,也曾经尝试过this教程,但是没有运气。另外,我的应用程序使用Puppeteer,但我不确定它是否会有所作为。我是服务器和Web开发的新手,所以我们将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:-1)

您可以在Nginx和PM2(节点进程管理器)的帮助下托管生产级应用程序,而不是apache,您可以尝试Nginx,因为大多数NodeJS或Express应用程序都将NGINX用作Nginx的HTTP代理。 PM2。您需要将域反向代理到localhost:<port>

示例Nginx虚拟主机,

server {
   server_name application.com;
   location / {
       proxy_pass http://<private-ip>:<port>;
       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;
   }
}

用于设置PM2。 全局安装此流程管理器。有关更多参考,您可以检查它here