执着往日的时光,冲出记忆的深渊,我们可以警觉并规避自己的悖逆。也可以不屑去与俗人争执一沙一尘,要知道人生最大的敌人是战胜自己。

我们来到人世间的目的,就是与真实的自我相遇。与任何人的相遇、分离、背叛无关,这才是孤独的享受罢了。

centos7.2安装swoole扩展

1、更新一下源

yum update

2、 安装pecl(默认安装 php7.2 没有pecl,如果已经安装可忽略)

yum install php72w-devel
yum install php72w-pear

3、安装 swoole

pecl install swoole
3.1补充: 关于 Swoole 安装配置选项:(特别注意:如果有些扩展没安装,yes之后后面会报错)
// 是否启用 Debug 跟踪调试
// 启用后,会在命令行中输出 Debug 跟踪 log,我一般禁用此项。
enable debug/trace log support? [no] : no
// 是否启用 PHP Sockets 支持
// 如果你需要用 PHP 编写 Sockets 服务,可以启用此项。
enable sockets supports? [no] : yes
// 是否启用 OpenSSL 支持
// 是否启用 SSL 加密,如果你是通过 Swoole 提供对外的 HTTPS 服务,则需要启用此项。
// 我的 Mac 是本地开发用,所以不启用。
enable openssl support? [no] : no
// 是否启用 HTTP2 支持
// 了解 HTTP2 新特性 https://zh.wikipedia.org/wiki/HTTP/2
enable http2 support? [no] : yes
// 是否启用异步 Redis 支持
// Swoole 实现了一套支持异步的 Redis 服务端框架
// https://wiki.swoole.com/wiki/page/p-redis_server.html
enable async-redis support? [no] : yes
// 是否启用 MySQL 原生支持
enable mysqlnd support? [no] : yes
// 是否启用 PgSQL 协程客户端支持
enable postgresql coroutine client support? [no] : yes

-------------------出现下面的提示,很高兴的告诉你,你成功了-------------------------------

Installing '/usr/lib64/php/modules/swoole.so'
Installing '/usr/include/php/ext/swoole/config.h'
install ok: channel://pecl.php.net/swoole-4.3.1
configuration option "php_ini" is not set to php.ini location
You should add "extension=swoole.so" to php.ini

4、 修改配置

vi /etc/php.ini 中加入
extension=swoole.so

5、重启

service php-fpm restart
service httpd restart

6、查看

php -m 或者 phpinfo() 查看是否有swoole

备注(安装过程中有可能会出现下面错误)

1、问题:PHP Startup: Unable to load dynamic library 'swoole.so' (tried: /usr/lib64/php/modules/swoole.so (/usr/lib64/php/modules/swoole.so: cannot open shared object file: No such file or directory), /usr/lib64/php/modules/swoole.so.so (/usr/lib64/php/modules/swoole.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

解决方法:把3.1补充说明内的全部扩展全部安装一遍

2、问题,如果使用php -m或者 phpinfo()查看不到swoole

解决方法:(确定安装和配置都没有问题)
1、如果使用两种方法都无法查看swoole,那么请执行第五步重启
2、如果使用php -m无法查看swoole,请使用命令service php-fpm restart重启
3、如果使用phpinfo()无法查看swoole,请使用命令service httpd restart重启

3、 问题 C++ preprocessor “/lib/cpp” fails sanity check

解决方法:没有c++库

yum install glibc-headers
yum install gcc gcc-c++ gcc-g77

4、问题:fatal error: openssl/ssl.h: No such file or directory

解决方法:没有openssl/ssl此类文件或目录

yum install openssl-devel

5、问题:error “Enable http2 support, require nghttp2 library.

解决方法:

wget https://github.com/nghttp2/nghttp2/releases/download/v1.34.0/nghttp2-1.34.0.tar.bz2
tar -xjf nghttp2-1.34.0.tar.bz2

6、问题PHP Warning: Module 'swoole' already loaded in Unknown on line 0

解决方法:
在修改配置时extension=swoole.so别放在最后,最好放在extension=sockets.so后面,

作者:最底层的技术渣
链接:https://www.jianshu.com/p/fa2cbf1a9e26
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
posted @ 2020-04-18 09:21  哎呦?不错哦  阅读(768)  评论(0编辑  收藏  举报