Tôi đang cố gắng proxy proxy WebSocket + HTTP với nginx.nginx và proxy WebSockets
Tôi đã đọc này: http://nginx.org/en/docs/http/websocket.html
cấu hình của tôi trông giống như:
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;
}
}
}
tôi có 2 vấn đề:
1) Kết nối đóng một lần một phút.
2) Tôi muốn chạy cả HTTP và WS trên cùng một cổng. Các ứng dụng hoạt động tốt tại địa phương, nhưng nếu tôi cố gắng đặt HTTP và WS trên cùng một cổng và thiết lập proxy nginx này, tôi nhận được điều này:
Kết nối WebSocket với 'ws: //ourapp.com/ws' không thành công : Mã phản hồi không mong muốn: 200
Tải ứng dụng (HTTP) có vẻ hoạt động tốt nhưng kết nối WebSocket không thành công.