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";

相关推荐
汐ya~16 分钟前
python-PC应用自动化操作
运维·人工智能·python·自动化
程序员雄杰16 分钟前
centos7.6 安装nginx 1.21.3与配置ssl
运维·nginx·ssl
久绊A1 小时前
Linux权限揭秘“Root与Sudo”
linux·运维·服务器
云计算DevOps-韩老师2 小时前
【网络云SRE运维开发】2025第2周-每日【2025/01/11】小测-【第11章NAT理论和实操考试】解析
运维·网络·智能路由器·运维开发·idc运维
在线打码2 小时前
针对数据库系统安全的漏洞扫描加固工具【WebSocket + MySQL】
数据库·python·websocket·mysql·安全·flask
✿ ༺ ོIT技术༻2 小时前
Linux:线程的互斥与同步
linux·运维·服务器·开发语言
爱敲代码的边芙2 小时前
Linux:动态库和静态库
linux·运维·算法
古飞龙2 小时前
使用外网访问在群晖中搭建思源docker
运维·docker·容器
_麦麦_2 小时前
[Linux]——进程(2)
linux·运维·服务器