我有一個Nginx的服務我的餘燼建立 如下:使用節點,socket.io,ember.js和nginx的
server {
listen 80;
root /home/ubuntu/my-app/dist;
index index.html;
location /api {
proxy_pass http://127.0.0.1:3000;
}
location/{
try_files $uri $uri/ /index.html;
}
}
我要添加使用socket.io聊天,但我已經在端口3000上有REST API。 我想知道構建這個的最佳方法是什麼。
我以爲我可以如下添加另一個地點:
location /socket.io {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://socket_nodes;
}
但它不工作。如果有人能指引我走向正確的方向,那會非常棒。
在此先感謝。
你是否研究過socket.io的具體nginx文檔:http://nginx.com/blog/nginx-nodejs-websockets-socketio/? – jfriend00 2014-12-13 07:17:32
我有,但我不清楚。因爲在端口3000上已經有節點api監聽了。我還想使用套接字,並且正在考慮在另一個端口上添加另一個代理。但我很確定有更好的方法來做到這一點。 – imahungry 2014-12-13 08:42:02
作爲反向代理的Nginx是最爲人熟知的場景。這意味着您可以通過同一端口代理任何本地/遠程資源。分享Nginx日誌,以便我們可以快速幫助您 – Anatoly 2014-12-13 10:25:41