मैं nginx के साथ वेबसाकेट + HTTP यातायात प्रॉक्सी करने की कोशिश कर रहा हूं।nginx और proxying WebSockets
मैं इस पढ़ा है: http://nginx.org/en/docs/http/websocket.html
मेरे config की तरह दिखता है:
1) कनेक्शन हर एक मिनट में बंद कर देता है:
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
gzip on;
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name ourapp.com;
location/{
proxy_pass http://127.0.0.1:100;
proxy_http_version 1.1;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
}
2 समस्याएं हैं।
2) मैं उसी पोर्ट पर HTTP और WS दोनों को चलाने के लिए चाहता हूं। आवेदन स्थानीय स्तर पर ठीक काम करता है, लेकिन अगर मैं एक ही पोर्ट पर HTTP और WS रख दिया और इस nginx प्रॉक्सी सेट करने का प्रयास है, मैं इस मिल:
WebSocket के लिए कनेक्शन 'ws: //ourapp.com/ws' असफल : अप्रत्याशित प्रतिक्रिया कोड: 200
ऐप लोड करना (HTTP) ठीक काम करता प्रतीत होता है, लेकिन वेबसाकेट कनेक्शन विफल रहता है।