同一服务器上的Node.js应用程序和Apache php后端

时间:2020-03-12 13:23:31

标签: node.js nginx centos7 nginx-reverse-proxy nginx-config

我有一个在CentOS 7下运行的VPS。 这个想法是:在maindomain.com下部署node.js前端应用程序,而在api.maindomain.com下部署php后端。可能吗?说,将服务器块添加到Nginx:反向代理localhost:4000用于node.js应用程序,另一个块用于localhost:80用于php后端。

也许存在其他解决方案,我不知道,我将不胜感激!主要目标是:将两个应用程序放在同一台服务器上。

1 个答案:

答案 0 :(得分:2)

解决方案1 ​​与www.maindomain.com + api.maindomain.com

前端

server {
    listen 80;
    server_name www.maindomain.com;

    location / {
        root /path/to/your/files;
        try_files  /index.html;
    }
}

后端php API

server {
    listen 80;
    server_name api.maindomain.com;

    location / {
        proxy_pass http://localhost:4000;
    }

}

解决方案2 位于同一域www.maindomain.com

上的所有内容
server {
    listen 80;
    server_name www.maindomain.com;

    location /api {
        proxy_pass http://localhost:4000/api;
    }

    location / { # always at the end, like wildcard
        root /path/to/your/files;
        try_files  /index.html;
    }
}