workerman是php写的,github地址:https://github.com/walkor/workerman
workerman实现websocket,需要2个页面:php html
php实现ws服务端,html实现ws客户端
ws服务启动后(php ws_test.php start,如果是wss,那就是php wss_test.php start),然后启动下apache(service httpd start),然后访问html文件即可查验效果
环境配置:
以CentOS6/7/8为例
yum install php php-pear php-process php-devel -y
php -m|grep posix
curl -Ss http://www.workerman.net/check.php | php
部署步骤:
1、git clone获取源码:
yum install git -y
git clone https://github.com/walkor/Workerman
2、在Workerman同级目录新建ws_test.php
3、在Apache的DocumentRoot目录新建html文件,在其中插入script(<body><script>示例代码</script></body>)
https://www.w3school.com.cn/js/js_howto.asp
使用WebSocket协议对外提供服务
http://doc.workerman.net/getting-started/simple-example.html
WS
把示例代码里的ws://0.0.0.0替换成ws://域名或外网IP
如果是wss://,则需要把0.0.0.0替换成域名,不能是IP,如下图
WSS
wss的服务端代码参考https://github.com/walkor/workerman
需要把第两句替换成require_once __DIR__ . '/Workerman/Autoloader.php';
把证书.crt和.key文件的绝对路径设置你自己的