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
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

原文链接: https://www.cnblogs.com/super-ldc/p/12724184.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    centos7.2安装swoole扩展

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/342940

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午1:49
下一篇 2023年3月2日 上午1:49

相关推荐