nginx配置websocket

websocket

最近因为项目需要做用户的单点登陆,经过一番考虑之后选择使用websocket来实现单点登录和实时的踢出。

1.其实前后端的功能实现还是比较简单,网上资料也很多,这里我就简单的贴点代码。
配置websocketconfig
nginx配置websocket
websocketController
nginx配置websocket
前端
nginx配置websocket
目前还未做兼容,后期会慢慢加,暂时只是功能的实现,本地测试了没问题,OK
重点来了,放到测试服辛酸之路开始了
首先是ssl证书问题,报连接不是wws,好改为wss://的连接
然后是连接失败,不过是另外的错,由于服务器是使用nginx,所以要配置nginx支持websocket
直接在server里加入
location /websocket {
proxy_pass ***;//你自己的处理接口
proxy_http_version 1.1;
proxy_send_timeout 900s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection “upgrade”;
proxy_set_header Origin “”;
}
记住这里和本地不一样,由于我本地写的时候因为localhost和127.0.0.1是一样的,所以我在配置nginx的时候要不程序和配置都用ip+端口或者都用域名,然后就是各种报502.302还有错误连接。
nginx配置使用ip+端口,程序使用域名,完美解决。(就这里卡了我大半天。。。)