Nginx websocket代理
首先在http域配置
1 2 3 4 | map $http_upgrade $connection_upgrade { default upgrade; '' close; } |
然后在server域增加匹配条件(之前是放 location / {} 下面,发现所有的代理地址都会访问消息服务的地址)
1 2 3 4 5 6 7 8 9 | location ^~/websocket { rewrite /websocket(.*)$ /$1 break ; #去掉地址上加的websocket proxy_pass http: //ip:port;#消息服务的ip端口 proxy_redirect off; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_set_header Origin "" ; } |
为了解决上面的问题,在访问消息服务地址的时候,在地址后面拼了个websocket,在Nginx代理在时候把websocket去掉
`ws://${window.location.hostname}:${window.location.port}/websocket `
然后重启Nginx就可以了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具