PHP swoole扩展安装(homestead)

概述

Swoole是:PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务器,处理异步任务,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole虽然是标准的PHP扩展,实际上与普通的扩展不同。普通的扩展只是提供一个库函数。而swoole扩展在运行后会接管PHP的控制权,进入事件循环。当IO事件发生后,swoole会自动回调指定的PHP函数。

Homestead 安装swoole

本片文章直接用Perl 安装,因为源码安装比较麻烦,Homestead内有swoole的安装包,所以采用Perl直接安装

安装

$ sudo pecl channel-update pecl.php.net
$ sudo pecl install swoole

如果遇见报错:No releases available for package “pecl.php.net/swoole”;
解决:

$ pear clear-cache
$ pear update-channels
$ pear upgrade

如果依然解决了,可是报如上错误,可以试着重启一下虚拟机

安装的时候会问你yes/no之类的选项,根据自己需求,开启扩展支持,本人直接全部回车(因为我不知道有啥用,嘿嘿)

enable sockets supports? [no] :   启用套接字支持?[否]
enable openssl support? [no] :    启用OpenSSL支持?[否]
enable http2 support? [no] :      启用HTTP2支持?[否]
enable mysqlnd support? [no] :    启用mysqlnd支持?[否]
enable postgresql coroutine client support? [no] : 启用PostgreSQL协程客户端支持?[否]

安装成功显示如下:

Build process completed successfully
Installing '/usr/lib/php/20151012/swoole.so'
Installing '/usr/include/php/20151012/ext/swoole/config.h'
install ok: channel://pecl.php.net/swoole-4.2.11
configuration option "php_ini" is not set to php.ini location
You should add "extension=swoole.so" to php.ini

看到有success我就放心了,上面提示了,你应该添加extension=swoole.so到php.ini文件
查看php.ini文件位置,命令如下

php -i|grep php.ini

结果如下:

vagrant@homestead:~$ php -i|grep php.ini
Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini

vim编辑一下 /etc/php/7.0/cli/php.ini,在扩展尾部加上extension=swoole.so,扩展前不要带分号

;extension=php_xsl.dll
extension=swoole.so
;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;

重启php环境

sudo service php7.0-fpm restart

最后查看swoole扩展是否安装成功

php -m |grep swoole

显示结果:

vagrant@homestead:~$ php -m |grep swoole
swoole

好了,Homestead安装swoole扩展就此安装成功,每个人采用的方法不用,遇到的坑也不一样,如果本篇文章对你有帮助,可以博主点个赞,谢谢你的观赏
Centos以及Ubuntu源码以及更多安装方式可以参考这篇文章:https://blog.csdn.net/u010071211/article/details/81082608

参考文章:
https://www.jianshu.com/p/b868a247a1a9
https://blog.csdn.net/u010071211/article/details/81082608

你可能感兴趣的:(php服务器)