问题一 :
那个五子棋联机小游戏的后台利用的是easyswoole,以是我测试性的启动一下。php easyswoole start,却涌现 PHP Warning: Module 'swoole' already loaded in Unknown on line 0,重启php fpm也是报这个错。
根据信息提示,便是swoole扩展已经加载过。以是可能便是php.ini文件中多出了一个extension=swoole.so,以是把多的注释或者直接删掉,最好重启一下php就没有这个缺点了。
问题二:
php启动是没问题了,通过命令php -m | less查看PHP安装的扩展中也有swoole。但是铜通过php easyswoole start启动时,又报了一个新的缺点。Swoole\Process::__construct() expects at most 3 parameters, 4 given。 缺点也指出了文件缺点的详细地方,提示是说那个类的布局函数该当是传3个参数,但是现在却传了4个。

我又回到我虚拟机的环境里的代码,创造没什么非常。导致这种缘故原由的那肯定便是搭建的环境中某个软件的版本原因,首先我先疑惑PHP版本,在我负责比对下,PHP版本同等。后来再看了一下缺点,缺点的根据是一个swoole的函数报错的。以是这肯定是swoole版本原因,可能是旧版本函数某个参数被去掉了。于是我通过命令查看了swoole版本,php --ri swoole
果真,我之前的是4.5版本,而现在宝塔上的这个是2.2。以是我就去网上找了很多宝塔升级swoole版本的方法,确实也有很多。试过了一两个后没起效果,于是我把swoole删掉,重新再装一遍。这次我没有按顺序,而是先装swoole4, 然后再装的swoole。末了查看版本竟然成功变成了4.5
问题三:
php easyswoole start启动也没有报错了,于是我就打开了游戏页面。创造两个玩家全都连接不上做事器,单独将ws做事地址要求也连接失落败。在放行的宝塔上ws做事端口也显示在利用,那这个是什么缘故原由呢。
折腾了一阵后,我才想起来阿里云的做事器也有一个安全组配置。以是肯定是那个端口是被阿里云的系统拦住了,只要找到安全组添加一个入站规则然后加上端口。末了重启es,打开游戏页面,可以正常运行了。