在同一个域中托pipe两个Node.JS应用程序

我有两个节点的js应用程序,我运行在同一个盒子上,我希望它运行所有路由的第一个节点js应用程序,除了如果url是www.domain.com/blog去其他节点的js应用程序。 这甚至有可能与此设置或我必须设置子域名和使用nginx或东西?

您可以使用nginx作为反向代理来实现这一点。

假设您的博客节点进程在端口3000上运行,并且另一个节点进程在3001上运行,则一个简单的configuration将如下所示:

upstream blog { server 127.0.0.1:3000; } upstream other { server 127.0.0.1:3001; } server { listen 80; server_name www.domain.com; location /blog { proxy_pass http://blog; proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header X-Real-IP $proxy_protocol_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto tcp; proxy_set_header X-NginX-Proxy true; } location / { proxy_pass http://other; proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header X-Real-IP $proxy_protocol_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto tcp; proxy_set_header X-NginX-Proxy true; } }