0

我想在 Debian 10 的新 VM 中执行程序,但收到与 .so 加载相关的警告:

分发相关规范:Debian 10、php 7.3.11

执行:

./program.php

它包含以下shebang:

#!/usr/bin/env php

警告:

PHP Warning:  PHP Startup: Unable to load dynamic library 'mysqli' (tried: /usr/lib/php/20180731/mysqli (/usr/lib/php/20180731/mysqli: cannot open shared object file: No such file or directory), /usr/lib/php/20180731/mysqli.so (/usr/lib/php/20180731/mysqli.so: undefined symbol: mysqlnd_global_stats)) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'pdo_mysql' (tried: /usr/lib/php/20180731/pdo_mysql (/usr/lib/php/20180731/pdo_mysql: cannot open shared object file: No such file or directory), /usr/lib/php/20180731/pdo_mysql.so (/usr/lib/php/20180731/pdo_mysql.so: undefined symbol: mysqlnd_allocator)) in Unknown on line 0

这是我修改 php.ini 文件的行:

extension=mysqli
extension=pdo_mysql

这是返回ls -l /usr/lib/php/20180731

total 8788
-rw-r--r-- 1 root root   34920 oct.  26 16:14 calendar.so
-rw-r--r-- 1 root root   14440 oct.  26 16:14 ctype.so
-rw-r--r-- 1 root root   92264 oct.  26 16:14 exif.so
-rw-r--r-- 1 root root 5429360 oct.  26 16:14 fileinfo.so
-rw-r--r-- 1 root root   67688 oct.  26 16:14 ftp.so
-rw-r--r-- 1 root root   14440 oct.  26 16:14 gettext.so
-rw-r--r-- 1 root root   47208 oct.  26 16:14 iconv.so
-rw-r--r-- 1 root root   47208 oct.  26 16:14 json.so
-rw-r--r-- 1 root root 1611912 oct.  26 16:14 mbstring.so
-rw-r--r-- 1 root root  141416 oct.  26 16:14 mysqli.so
-rw-r--r-- 1 root root  251512 oct.  26 16:14 mysqlnd.so
-rw-r--r-- 1 root root  518640 oct.  26 16:14 opcache.so
-rw-r--r-- 1 root root   30824 oct.  26 16:14 pdo_mysql.so
-rw-r--r-- 1 root root  112744 oct.  26 16:14 pdo.so
-rw-r--r-- 1 root root  280680 oct.  26 16:14 phar.so
-rw-r--r-- 1 root root   39016 oct.  26 16:14 posix.so
-rw-r--r-- 1 root root   34920 oct.  26 16:14 readline.so
-rw-r--r-- 1 root root   14440 oct.  26 16:14 shmop.so
-rw-r--r-- 1 root root   96360 oct.  26 16:14 sockets.so
-rw-r--r-- 1 root root   22632 oct.  26 16:14 sysvmsg.so
-rw-r--r-- 1 root root   14440 oct.  26 16:14 sysvsem.so
-rw-r--r-- 1 root root   14440 oct.  26 16:14 sysvshm.so
-rw-r--r-- 1 root root   22632 oct.  26 16:14 tokenizer.so

我找不到 php 无法打开 .so 文件的原因

我知道有很多像我这样的帖子,但它们只是路径相关的问题,我的路径似乎是正确的。

4

1 回答 1

0

这意味着您的扩展不在/usr/lib/php/20180731

您可以使用检查正确的路径

php -i | grep extension_dir

并确保你的mysqli.sopdo_mysql在那里

于 2019-12-11T11:40:40.383 回答