Node.js 一台服务器上有多个节点应用程序,Nginx仅为一个站点提供服务

Node.js 一台服务器上有多个节点应用程序,Nginx仅为一个站点提供服务,node.js,express,nginx,server,port,Node.js,Express,Nginx,Server,Port,我有一个服务器,我想用它来托管两个节点的应用程序,但无论我做什么,我的第二个域都是服务于domain1.com 我希望节点应用程序在domain1.com上,一个在domain2.com上 以下是配置: 域名1.com server { listen 80; listen [::]:80; server_name www.domain1.com; return 301 https://$server_name$request_uri

我有一个服务器,我想用它来托管两个节点的应用程序,但无论我做什么,我的第二个域都是服务于domain1.com

我希望节点应用程序在domain1.com上,一个在domain2.com上

以下是配置:

域名1.com

server {
        listen 80;
        listen [::]:80;
        server_name www.domain1.com;
        return 301 https://$server_name$request_uri;

}



server {

        listen 443 ssl;
        listen [::]:443 ssl;

        # Add index.php to the list if you are using PHP
        # index index.html index.htm index.nginx-debian.html;

        server_name www.domain1.com;

        location / {
                proxy_pass http://127.0.0.1:3000/;
                include /etc/nginx/proxy_prams;
        }

}
域名2.com

server {
        listen 80;
        listen [::]:80;
        server_name www.domain2.com;
        return 301 https://$server_name$request_uri;

}



server {

        listen 443 ssl;
        listen [::]:443 ssl;

        # Add index.php to the list if you are using PHP
        # index index.html index.htm index.nginx-debian.html;

        server_name www.domain2.com;

        location / {
                proxy_pass http://127.0.0.1:3002/;
                include /etc/nginx/proxy_prams;
        }

}
let port = (3002);
app.set('port', port);

/**
 * Create HTTP server.
*/

var server = http.createServer(app);
这是domain2.com的快速设置

server {
        listen 80;
        listen [::]:80;
        server_name www.domain2.com;
        return 301 https://$server_name$request_uri;

}



server {

        listen 443 ssl;
        listen [::]:443 ssl;

        # Add index.php to the list if you are using PHP
        # index index.html index.htm index.nginx-debian.html;

        server_name www.domain2.com;

        location / {
                proxy_pass http://127.0.0.1:3002/;
                include /etc/nginx/proxy_prams;
        }

}
let port = (3002);
app.set('port', port);

/**
 * Create HTTP server.
*/

var server = http.createServer(app);

如您所见,我已经在nginx服务器块中设置了端口,但只提供domain1.com服务。有人能帮上忙吗?

作为一个测试,试着将不起作用的服务器名称设置为“一网打尽”。使用
nginx-t
测试您的配置,看看nginx正在读取哪些文件。@Alan所以只需将服务器名称设置为
server\u name即可
?@RichardSmith-Hmm,它似乎没有读取allI的Domain2文件。我不知道您的配置文件是如何组织的,但在某些操作系统上,它们被放置在可用的
站点中,并被符号链接到启用的
站点中。在名为
nginx.conf
的顶级配置文件中,您应该看到
include
语句。