1
我有一個WebSocket的,它位於下的應用程序:nginx的配置作爲代理的WebSocket的
http://localhost:8888/something/ws
我想使用nginx作爲代理,但連接的轉發不起作用。這是我的配置文件:
upstream backend {
server 127.0.0.1:8888;
}
server {
listen 80;
server_name localhost;
location/{
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://backend;
proxy_next_upstream error;
}
location /something/ws {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
什麼是故障。我必須重寫路徑還是其他的東西?
UPDATE
的Ubuntu 12.04。附帶nginx 1.1。 nginx的升級到1.6之前,我不得不刪除nginx的常見和nginx的滿,太,否則nginx的1.1重新安裝...
我相信你應該問服務器故障 – demas
@demas不一定這個問題,請參閱[是否有關web服務器配置文件的問題和重寫規則的話題?](http://meta.stackoverflow.com/a/262746/ 456814)。 –
我在serverfault上發現了類似的問題,但我不確定這是否是解決方案:http://serverfault.com/questions/482026/nginx-not-proxying-websockets-properly – eatdas