wetfish / sync

Synchronize audio and video between friends! Supports HTML5 video, YouTube, and Vimeo
27 stars 8 forks source link

Error during WebSocket handshake: 'Connection' header value must contain 'Upgrade' #61

Open mozai opened 3 years ago

mozai commented 3 years ago

Probably another quiet update to the websockets standard that will break stuff when Chrome+Firefox decides to be a hardass. Seeing this in the JS console

socket.io.js:8 WebSocket connection to 'wss://sync.wetfish.net/socket.io/?EIO=3&transport=websocket&sid={redacted}' failed: Error during WebSocket handshake: 'Connection' header value must contain 'Upgrade'

Meleeman01 commented 3 years ago

https://www.serverlab.ca/tutorials/linux/web-servers-linux/how-to-proxy-wss-websockets-with-nginx/

i think the problem is due to the nginx configuration for ssl isn't proxypassed, you should add proxy to the cert, key, and whatever else related to the ssl configuration i think. i looked over the server configuration you sent me and i think it might be solved by following that tutorial, however i'll need to test on my local with self signed cert, but if you want to now, you could try it.

EDIT: this might also be helpful, https://docs.nginx.com/nginx/admin-guide/security-controls/securing-http-traffic-upstream/

mozai commented 3 years ago

The nginx documentation says it can be 'upgrade' with a small 'u' But the official RFC for websockets says it must be 'Upgrade' with a big 'U'

bleah, I shouldn't be surprised it's case-sensitive. This looks like a problem with nginx not sync; we can resolve this issue by adding set-up instructions in the readme.md. If this were a ticketing system I'd downgrade this to "minor."

kelsh commented 3 years ago

good work meleeman