我知道多個node.js和我通過擴展Meteor假設可以使用Nginx在一臺服務器上運行。我已經安裝了Nginx並在Ubuntu服務器上運行,我甚至可以讓它響應請求並將它們代理到我的一個應用程序。然而,當我試圖讓Nginx代理第二個應用程序的流量時,我遇到了障礙。Nginx和多個Meteor/Nodejs應用程序的問題
一些背景資料:
- 1應用在端口8001
- 第二個應用程序運行在端口8002
- Nginx的偵聽端口80
- 試圖獲取nginx的運行在流量發送/到App one and traffic at/app2/to app two
- 這兩個應用程序都可以通過轉到域達到:8001和域:8002
我的Nginx的配置:
upstream mydomain.com {
server 127.0.0.1:8001;
server 127.0.0.1:8002;
}
# the nginx server instance
server {
listen 0.0.0.0:80 default_server;
access_log /var/log/nginx/mydomain.log;
location /app2 {
rewrite /app2/(.*) /$1 break;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:8002;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:8001;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
任何有識之士,以什麼可能會在交通進入/ APP 2 /我會非常感激上走!
這項權利這裏是一個sweeeeet答案!有一個upvote :) – 2013-04-29 22:47:06
這是一個了不起的答案,謝謝。我唯一的問題是,我不想嘗試循環賽(你部分解決了這個問題)。我會添加正確的上游條目,但我很好奇...是我的位置條目好嗎? – jak119 2013-04-30 15:10:33
我建議下一步:如果app1是核心應用,app2是'app1的孩子'。你的位置是好的。你也可以將它們放在/ app1和/ app2上。 Boll – jmingov 2013-04-30 15:39:44