客户要做一个小程序聊天的功能,初步考虑用workman。特此记录一下折腾的过程,建议从Linux安装使用,用宝塔最好。
1、首先是安装workerman
composer require topthink/think-worker
这里注意:如果之前单独安装过workerman,这里可能会安装报错。因为安装think-worker的时候,就会安装上workman了。
2、其次是安装GatewayWorker 可以使用下面的命令安装
composer require workerman/gateway-worker
3、接下来,可以直接在命令行运行
php think worker:gateway 会显示下面的信息,表示启动成功。
Starting GatewayWorker server...
Workerman[think] start in DEBUG mode
----------------------- WORKERMAN -----------------------------
Workerman version:3.5.13 PHP version:7.2.7-0ubuntu0.18.04.2
------------------------ WORKERS -------------------------------
user worker listen processes status
kancloud Register text://127.0.0.1:1236 1 [OK]
kancloud BusinessWorker none 1 [OK]
kancloud thinkphp websocket://0.0.0.0:2348 1 [OK]
----------------------------------------------------------------
如果需要使用守护进程模式,可以使用
php think worker:gateway -d
这样就安装成功了。中间composer出了一些问题,切换了几个composer镜像好了。
还有别忘了配置nginx:
location /wss {
proxy_pass http://127.0.0.1:2348;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
最后用这个测试看看是否握手成功:
wss://cmsaas.caomei.zone/wss:2348
|