failed: Error during WebSocket handshake: Unexpected response code: 400

港控/mmm° 2022-02-28 15:06 403阅读 1赞

问题描述:在项目中引用Socket.Io,在项目部署后报错,本地运行不报错

错误原因:需要在配置文件nginx.conf中配置相关信息

解决方案:

  1. nginx文件的location中添加
  2. proxy\_http\_version 1.1;
  3. proxy\_set\_header Upgrade $http\_upgrade;
  4. proxy\_set\_header Connection "upgrade";
  5. 第一行告诉Nginx在与Node后端通信时使用HTTP / 1.1,这是WebSockets所必需的。接下来的两行告诉Nginx响应升级请求,当浏览器想要使用WebSocket时,该请求由HTTP启动。这三行都是必须添加的。

例如:

server {
listen 80 default_server;
listen [::]:80 default_server;
server_name localhost;
root /usr/share/nginx/html;

  1. \# Load configuration files for the default server block.
  2. include /etc/nginx/default.d/\*.conf;
  3. location / \{
  4. proxy\_pass http://localhost:3100;
  5. proxy\_http\_version 1.1;
  6. proxy\_set\_header Upgrade $http\_upgrade;
  7. proxy\_set\_header Connection "upgrade";
  8. proxy\_set\_header Host $host;
  9. \}

}
-——————————
作者:Tvibe
来源:CSDN
原文:https://blog.csdn.net/ItTvibe/article/details/81538096
版权声明:本文为博主原创文章,转载请附上博文链接!

发表评论

表情:
评论列表 (有 0 条评论,403人围观)

还没有评论,来说两句吧...

相关阅读