gpt4 book ai didi

node.js - 如何在我的 nginx 服务器上设置两个 Node JS 应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 00:48:09 25 4
gpt4 key购买 nike

我有一个 Node js 应用程序在 app.example.com 的端口 4000 上成功运行。现在我想在 www.example.com 的端口 5010 上运行另一个 Node js 应用程序。我该怎么做?

我的尝试。在站点可用文件夹中创建两个文件。一个是 www.example.com,一个是 app.example.com文件的内容。

app.example.com

server {
listen 80;

server_name app.example.com;

location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_set_header X-NginX-Proxy true;

proxy_pass http://localhost:4000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
}
}

如果我一个人有这个就好了。有用。现在添加
www.example.com

server {
listen 80;

server_name www.example.com;

location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_set_header X-NginX-Proxy true;

proxy_pass http://localhost:5010;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
}
}

两个 Node 应用程序都在各自的端口上永远运行。现在,我提供什么 url(即 app.example.com 或 www.example.com)并不重要,它会提供相同的应用程序,即 Hello World。如何在两个不同的端口上实现两个不同的应用程序?

编辑如果我输入 www.example.com:5010,但我想要它而不必输入 5010,就会发生这种情况。我将如何实现这一点?

最佳答案

这是任何地方都没有给出的东西。您必须将支持站点的文件链接到 ngnix.conf 中。您的站点启用文件,即 www.domain.com、app1.domain.com app2.domain.com 将不起作用。除非你将它们包含在 nginx.conf 中。像这样的东西。

include /etc/nginx/sites-enabled/*.conf;
include /etc/nginx/sites-enabled/app.example.com;
include /etc/nginx/sites-enabled/www.example.com;

您的 app.example.com 和 www.example.com 站点可用文件将类似于所发布的文件。最后从 Node 应用程序中提到的端口运行 Node 应用程序。不要忘记在您的 app.domain.com 和 www.domain.com 中使用相同的端口号,否则您将收到 502 Bad gateway 错误。之后 sudo service nginx restart 就可以了。

关于node.js - 如何在我的 nginx 服务器上设置两个 Node JS 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33723140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com