首页
点滴
Nginx 配置 Websocket 代理
场景:后台服务需要通过Websocket推送消息给登录的用户,用户id为xxx 假设 Nginx服务为:192.168.1.2:9090 后端服务为 :192.168.1.1:8080 无特殊情况下前端监听的websocket的地址为:`ws://192.168.1.1:8080/ws/xxx` 但是由于某些原因后端服务不对外开放访问,只能通过Nginx代理访问,这个时候上面的Websocket地址就不能访问了,需要配置Nginx代理,我们在Nginx配置文件中添加location节点配置信息。 ``` location /websocketUrl/ { rewrite ^/websocketUrl/(.*)$ /$1 break; # 拦截标识去除 proxy_pass http://192.168.1.1:8080; # 代理的ip和port写ws访问的实际地址 proxy_http_version 1.1; # 这里必须使用http 1.1 # 下面两个必须设置,请求头设置为ws请求方式 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } ``` 配置完成重启Nginx 这个时候前端监听的websocket的地址为: `ws://192.168.1.2:9090/websocketUrl/ws/xxx`
博客分类
源码解析 (1)
多线程 (5)
Java (10)
Linux (8)
Docker (9)
SpringBoot (14)
微服务 (1)
Redis (15)
MySQL (7)
VMware (3)
Nginx (15)
MyBatis (2)
RabbitMQ (1)
Git (7)
工具类 (12)
前端 (3)
友情链接
layui
© 2020-2025 www.chenhuazhan.com All Rights Reserved 备案号:
桂ICP备17004487号-1
粤公网安备44030002005146