PHP Warning: PHP Startup: Unable to load dynamic library 问题解决办法

编程知识 行业动态 更新时间:2024-06-13 00:22:42

一,问题描述:

在命令行执行 "php -m" 查看安装了哪些扩展模块时,出现了如下错误提示:

# php -m
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20190902/redis.so' (tried: /usr/lib/php/20190902/redis.so (/usr/lib/php/20190902/redis.so: undefined symbol: igbinary_serialize), /usr/lib/php/20190902//usr/lib/php/20190902/redis.so.so (/usr/lib/php/20190902//usr/lib/php/20190902/redis.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'memcached.so' (tried: /usr/lib/php/20190902/memcached.so (/usr/lib/php/20190902/memcached.so: undefined symbol: igbinary_serialize), /usr/lib/php/20190902/memcached.so.so (/usr/lib/php/20190902/memcached.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

二,原因分析:

没有安装 igbinary_serialize 扩展。

三,解决方法:

1. Ubuntu 系统:
 

$ sudo apt install php-igbinary

2. centOS 系统:

$ sudo yum install php-pecl-igbinary

3. 编译方式安装

$ cd /usr/local/src/
$ wget http://pecl.php/get/igbinary-3.1.2.tgz
$ tar -xvf igbinary-3.1.2.tgz
$ cd igbinary-3.1.2
$ phpize
$ ./configure --with-php-config=/usr/local/php/bin/php-config
$ make
$ make install

四,类似问题

报错:(php_json_decode_ex )
 

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/redis.so' - /usr/lib64/php/modules/redis.so: undefined symbol: php_json_decode_ex in Unknown on line 0

报错:(json_globals )

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/src/phpredis-develop/modules/redis.so' - /usr/local/src/phpredis-develop/modules/redis.so: undefined symbol: json_globals in Unknown on line 0

原因分析:

The ini-files in /etc/php/conf.d are loaded in alphabetical order. If you follow the [extension name].ini convention, this should naturally work since i(gbinary.ini) comes before r(edis.ini).

无论是 php.ini 或者配置成 /etc/php/conf.d 中单独的 xxx.ini 扩展文件,加载这些扩展的顺序都是依扩展名称的字母为序的。

出现上面的问题,多是因为 redis 和 json 扩展加载顺序冲突导致的。

解决办法:

需要调整这些扩展的加载顺序,将 json 扩展放到 redis 前面。

 

更多推荐

PHP Warning: PHP Startup: Unable to load dynamic library 问题解决办法

本文发布于:2023-04-03 02:44:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/b37c6812d5a9c1039c2d59272dbefd5c.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:解决办法   Startup   Warning   PHP   Unable

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!