Swoole详细介绍及如何使用,这里暂时不做说明,可以参考一下文档:https://wiki.swoole.com/

源码编译安装

下载地址如下:

载源代码包后,在终端进入源码目录,执行下面的命令进行编译和安装

cd swoole
phpize
./configure
make
sudo make install

PECL方式安装

如果pecl还没有安装,可以按照如下方式安装

//php版本 > 7
$ wget http://pear.php.net/go-pear.phar
$ php go-pear.phar //php版本 < 7
$ yum install php-pear
//否则会报错PHP Parse error: syntax error, unexpected //'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on //line 91

  下面开始安装swoole

pecl install swoole
//报错如下
//Warning: Invalid argument supplied for foreach() in //Command.php on line 249

  需要修改如下配置:

vi `which pecl`
// 找到最后一行
exec $PHP -C -n -q $INCARG -d date.timezone=UTC -d output_buffering= -d variables_order=EGPCS -d safe_mode= -d register_argc_argv="On" $INCDIR/peclcmd.php "$@"
// 去掉 -n 标示,保存退出

  修改完成后,再次安装

pecl install swoole

// 报错如下
running: phpize
Can't find PHP headers in /usr/include/php
The php-devel package is required for use of this command.
ERROR: `phpize' failed
// 需要安装 php-devel扩展

  下面安装php-devel扩展

yum install php-devel

// 报错如下
Error: php71w-common conflicts with php-common-5.4.-.el7_4..x86_64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

  以上报错原因是,linux系统的默认php版本是5.4,当前php版本为7.1.14,所以在安装扩展的时候,要指定PHP 版本来安装扩展,操作如下:

// php71w-* 方式安装扩展

yum install php71w-devel

  以上安装成功后就可以继续安装swoole了

// 出现如下提示信息,swoole就安装成功啦

Build process completed successfully
Installing '/usr/lib64/php/modules/swoole.so'
install ok: channel://pecl.php.net/swoole-2.1.3
configuration option "php_ini" is not set to php.ini location
You should add "extension=swoole.so" to php.ini

  最后需要配置php.ini文件,将extension=swoole.so添加进去

// 查找php.ini文件地址
php -i | grep php.ini Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini

  修改完成后,重启Apache

systemctl restart httpd

  如下图,即表示swoole扩展安装成功

参考地址:https://www.cnblogs.com/phpwechat/p/8417331.html

最新文章

  1. POJ2001Shortest Prefixes[Trie]
  2. MVC 之 T4模板简介
  3. hasOwnProperty和in
  4. C# 7个读写Excel文件的类库
  5. js 的点击事件
  6. BestCoder22 1003.NPY and shot 解题报告
  7. 一步一步搭建客服系统 (3) js 实现“截图粘贴”及“生成网页缩略图”
  8. 让VS2010/VS2012添加新类时自动添加public关键字
  9. HTTPS连接的前几毫秒发生了什么——Amazon HTTPS案例分析
  10. Shell编程速查手册
  11. underscorejs-each学习
  12. 解决:getWeatherbyCityName(city),服务器无法处理请求。 ---&gt; 未将对象引用设置到对象的实例。
  13. 建立地方Jekyll周边环境
  14. 使用 Homebrew 安装 Git
  15. 通过实例介绍持续集成的应用--基于Jenkins
  16. canvas-7globleCompositeOperation.html
  17. POJ_2376_Cleaning Shifts【贪心】【区间覆盖】
  18. 七天学会ASP.NET MVC ——深入理解ASP.NET MVC
  19. ubuntu远程桌面、VNC(转载)
  20. PAT乙级1005

热门文章

  1. 数据库课程设计:SQL Server + Express + node.js + ejs 论坛管理系统
  2. python智能图片识别系统(图片切割、图片识别、区别标识)
  3. asp.net core 应用docke部署到centos7
  4. 【算法•日更•第十二期】信息奥赛一本通1585:【例 1】Amount of Degrees题解
  5. linux上传下载小工具lrzsz
  6. 用心整理的 献丑啦 一些关于http url qs fs ...模块的方法
  7. python 09 数据包 异常处理
  8. keepalived的vrrp多播报文被禁,导致VIP同时位于多个机器上
  9. 数据分析-RFM模型用户分析
  10. Node.js小项目——学生信息管理系统