Moja konfiguracja to cloudflare -> nginx -> serwer node.js. Potwierdziłem, że nie jest to serwer node.js. Problem wydaje się być połączeniem cloudflare i nginx. Działa dobrze z tylko nginx i node.js.Websockets rozłączają się z nginxem i cloudflare
Oto, co dzienniki nginx dla połączenia z internetem: 162.158.75.125 - - [29/Oct/2016: 00: 01: 47 +0000] "GET/HTTP/1.1" 101 1047 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537,36 (KHTML, like Gecko) Chrome/Safari/537,36" 53.0.2785.143
nginx config:
server {
listen 443 ssl;
server_name vectorwar.io;
ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;
location/{
proxy_pass http://localhost:7000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 31104000s;
proxy_connect_timeout 31104000s;
proxy_send_timeout 31104000s;
}
}
[Czy mogę korzystać z WebSockets z CloudFare] (https://support.cloudflare.com/hc/en-us/articles/200169466-Can-I-use-CloudFlare-with-WebSockets-)? – jfriend00
To nie rozwiązuje mojego problemu. – user1781498
Być może gdzieś w rurze? Jak długo jest on otwarty, gdy websocket milczy? Czy wysyłanie wiadomości w stylu ping/ponga w dół połączenia WS okresowo uniemożliwia jej rozłączenie? – Brian