环境
Linux centos 7.6
宝塔面板
准备
使用https访问协议的域名(aa.bb.com)
通常情况下,浏览器中使用ws://aa.bb.com的方式即可以连接websocket,实现项目中的实时通讯需求,但由于小程序等场景,按要求须使用wss的方式才能来连接websocket服务器。要使用wss,首先需要配置域名使用https协议,其次需要通过apache中的代理功能,开启wss协议的应用,本文重点讲述apache下如何开启代理模块并配置wss协议。
原理
wss协议实际是websocket+SSL,就是在websocket协议上加入SSL层,类似https+SSL。
所以只需要在websocket协议的基础上开启SSL即可支持wss协议。
配置
1.启用 proxy_wstunnel_module 模块,取消注释即可
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
2.配置代理,在443端口下, 127.0.0.1:5800为websocket应用端口
#这块就是最主要的
SSLProxyEngine on
ProxyRequests Off
#服务器+端口号
ProxyPass /wss ws://127.0.0.1:5800/