websocket中報failed: Error during WebSocket handshake: Unexpected response code: 400

項目引入websocket後在本地正常,一上生產環境就報400
緣由:生產環境中配置了nginx,nginx代理 時,未經過,須要在配置文件nginx.conf中配置相關信息nginx

解決方案:web

       在nginx文件的location中添加後端

                            proxy_http_version 1.1;    
                            proxy_set_header Upgrade $http_upgrade;
                            proxy_set_header Connection "upgrade";瀏覽器

       第一行告訴Nginx在與Node後端通訊時使用HTTP / 1.1,這是WebSockets所必需的。接下來的兩行告訴Nginx響應升級請求,當瀏覽器想要使用WebSocket時,該請求由HTTP啓動。這三行都是必須添加的。websocket

相關文章
相關標籤/搜索