Centos7安装swoole扩展操作示例

时间:2021-05-28

本文实例讲述了Centos7安装swoole扩展操作。分享给大家供大家参考,具体如下:

我的PHP版本为PHP 7.2.24
  • 更新源
  • [root@localhost html]# yum update
  • 安装需要支持的扩展
  • [root@localhost html]# yum install php72w-devel[root@localhost html]# yum install php72w-pear[root@localhost html]# yum install gcc[root@localhost html]# yum install gcc-c++[root@localhost html]# yum install gcc-g77
  • 安装swoole
  • [root@localhost html]# pecl install swoole...// 是否启用 PHP Sockets 支持enable sockets supports? [no] : yes// 是否启用 OpenSSL 支持enable openssl support? [no] : yes// 是否启用 HTTP2 支持enable http2 support? [no] : yes// 是否启用 MySQL 原生支持enable mysqlnd support? [no] : yes

    安装成功

    Build process completed successfullyInstalling '/usr/lib64/php/modules/swoole.so'Installing '/usr/include/php/ext/swoole/config.h'install ok: channel://pecl.php.net/swoole-4.4.12configuration option "php_ini" is not set to php.ini locationYou should add "extension=swoole.so" to php.ini

    安装失败

    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// 把extension=swoole.so加到socket的加载后面,在php7.2中进入/etc/php.d下,在sockets.ini中将extension=swoole.so加到extension=sockets.so下面,后重启php-fpm

    php -m或者 phpinfo()查看不到swoole

    解决方法:

    1. 确认安装和配置是否有问题
    2、如果使用php -m无法查看swoole,请使用命令service php-fpm restart重启
    3、如果使用phpinfo()无法查看swoole,请使用命令service httpd restart重启

    C++ preprocessor “/lib/cpp” fails sanity check// 没有c++库// yum install glibc-headers// yum install gcc gcc-c++ gcc-g77fatal error: openssl/ssl.h: No such file or directory// 没有openssl/ssl此类文件或目录// yum install openssl-develerror “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.bz2PHP Warning: Module 'swoole' already loaded in Unknown on line 0// 在修改配置时extension=swoole.so别放在最后,最好放在extension=sockets.so后面
  • 修改配置
  • [root@localhost html]# vim /etc/php.ini...extension=swoole.so....
  • 重启
  • [root@localhost html]# /bin/systemctl restart php-fpm.service[root@localhost html]# /bin/systemctl restart httpd.service
  • 验证是否安装成功
  • php -m 或者 phpinfo() 查看是否有swoole[root@localhost /]# php --ri swoole

    希望本文所述对大家centos系统配置有所帮助。

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章