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

相关文章
相关标签/搜索