PHP7.4 + Swoole 4.6.2安装部署

最近业务需要做一个定时任务,由于需要精确到秒,所以第一时间就想到了用Swoole的定时器来完成。

服务器里默认装的是宝塔面板自带的swoole拓展,但是版本是4.5.9. 协程模式下不支持curl的部分op,比如代理和批量执行的问题。

去官网上看似乎最新版本已经解决了这个问题,遂在服务器里把swoole拓展删了又装,发现版本还是4.5.9.看来宝塔里默认的版本就是这个了,最好的办法就是自己手动安装了。

//第一步,用宝塔面板安装PHP7.4,在安装好PHP7.4之后, 不要在宝塔里面安装swoole。
//第二步 将PHP的可执行文件都软连接到 /usr/bin/ 目录下
ln -sf /www/server/php/74/bin/* /usr/bin/

//下载4.6.2版本的swoole源码包
cd ~
wget -O swoole.4.6.2.zip https://github.com/swoole/swoole-src/archive/v4.6.2.zip
unzip swoole.4.6.2.zip
cd swoole.4.6.2

//开始编译
phpize
./configure --enable-openssl --enable-http2 --enable-mysqlnd --enable-swoole-json --enable-swoole-curl --enable-sockets
make && make install

//编辑php.ini文件,加入swoole.so
echo "extension=swoole.so" >> /www/server/php/74/etc/php.ini

//面板里重载配置即可

执行php -i,版本已经升级为4.6.2。执行脚本发现问题已经解决!

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注