nginx代理websocket请求报400错误的问题解决

我使用nginx的86端口代理的websocket,用postman测试的时候一直报这个错,

经过测试,直接请求端口号又是正常的

那基本可以确认是nginx代理的问题出了点问题,经检查发现配置不对,调整后正常了,调整后如下

复制代码
location /websocket/{
        proxy_buffer_size  128k;
        proxy_buffers   32 32k;
        proxy_busy_buffers_size 128k;
        proxy_pass    http://127.0.0.1:7095/secondary-transaction-server/websocket/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";   
        proxy_set_header Host $host;
        proxy_connect_timeout 3s;
        proxy_read_timeout 60s;
        proxy_send_timeout 12s;
        proxy_buffering off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

其中最重要的是三个

//告诉nginx使用HTTP/1.1通信协议,这是websoket必须要使用的协议

proxy_http_version 1.1;

//下面两个是告诉nginx,如果是WebSocket时,需要响应http升级请求

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection "upgrade";

相关推荐
Brilliantwxx1 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
richdata2 小时前
商品数字化不是先做大数据,而是先把数据变成可用决策
大数据·运维·数据治理·商品数字化·智能补货·ai商品决策
weixin_416667962 小时前
【无标题】
运维·服务器·网络
予昊3 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
一池秋_3 小时前
arm低配linux设备,桌面应用冷启动提速方法
linux·运维·arm开发
上海云盾-小余5 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
IT大白鼠5 小时前
Docker 私有仓库管理:Harbor 企业级仓库搭建与镜像全生命周期管理
运维·docker·容器
戴西软件5 小时前
戴西iDWS.3DViz Suite数据轻量化可视化软件,从传统桌面软件向云端协同的重大突破
大数据·运维·网络·人工智能·机器学习·3d
我命由我123456 小时前
Linux - Linux/POSIX 路径斜杠折叠规则
linux·运维·服务器·android studio·android jetpack·android-studio·android runtime
姚不倒6 小时前
Nginx 反向代理:5 种负载均衡策略与实战
运维·nginx·负载均衡