FRP客户端设置,虚拟机可用
[webSocket]
type = tcp
local_ip = 127.0.0.1
local_port = 7234
remote_port = 7234
[Swoole]
type = tcp
local_ip = 127.0.0.1
local_port = 7314
remote_port = 7314
需要确保端口没有被占用占用了的话把local_port和主题端口设置都改为remote_port避免被运营商封杀端口
参考例子
注意以下教程里的1314替换为FRP设置的端口,比如7314,以下设置全部设置为7314
之前的websocket是基于workerman的,这个是基于swoole的。小白止步~
关于workerman和swoole的对比请百度~
1、先更新sdk到最新版本(1.1.10),LightSNS也要更新到1.6.86.06以上的版本
下载地址:https://q.jinsom.cn/36888.html
2、开启端口1314(宝塔和服务器安全组都要同时开启)
3、宝塔的php扩展里面安装swoole扩展,(安装一个就行)
理论安装好了,正常会在php.ini里面写入了 extension=swoole.so ,如果没有自己加上
可以通过php -m 命令查看是否已经成功安装了swoole扩展
4、启动sdk文件下的Extend/swoole/ws_server.php文件
1
|
php /www/wwwroot/xxxxxxxxx/Extend/swoole/ws_server.php |
也可以在/www/wwwroot/xxxxxxxxx/swoole/目录下直接运行
1
|
php ws_server.php |
第四步骤,正常执行完成了是没有任何信息返回的
5、如果你网站已经https证书,请在你网站的配置文件里面添加下面这一段代码
1
2
3
4
5
6
7
8
9
|
location /wss { proxy_pass http: //域名:7314; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade ; proxy_set_header Connection "Upgrade" ; proxy_connect_timeout 5s; #配置点1 proxy_read_timeout 60000s; #配置点2,如果没效,可以考虑这个时间配置长一点 proxy_send_timeout 60000s; #配置点3 } |
请把以上的“域名”改为你网站的域名即可(其他不用动,也不能填IP,http也不能改为https)
6、LightSNS主题后台-其他设置-websocket-填上对应信息即可。
7、每次重启服务器需要重新执行ws_server.php文件(就是第四步骤)
—————————–
如果有多台服务器,可以部署swoole在另一台服务器。
备注:
1、workerman的配置教程:https://q.jinsom.cn/41704.html
2、如果开启了CDN(非对象储存的cdn)会导致无法使用,请参考:https://q.jinsom.cn/41859.html
3、关于如何执行命令
直接在宝塔文件管理里面的终端里面执行即可
YXYH博客:https://yuxiangyuhao.cn