查看了所有关于搜索此内容的文章,但没有有效的答案 - 在 Ubuntu 16.04 上我得到:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/msqli.so' - /usr/lib/php/20151012/msqli.so: cannot open shared object file: No such file or directory in Unknown on line 0
msqli.so
肯定在上面引用的文件夹中,归 root 所有并且是可执行的。 文件夹和父文件夹归 root 所有。 地狱般的是,phpmyadmin运行良好,可以很好地查看和操作mySQL数据库。 我需要将文件夹/文件转换为 mysql 或 php 实体吗? 今天刚刚重新安装了Apache/php/mysql,但这并没有修复它 - 所有最新版本。 尝试使用 Eclipse IDE,但此代码在 Web 服务器上也失败。 还尝试了php.ini
扩展名pdo_ msql.so
和msqlnd.so
以及相关的编码技术,但它们都导致了上述消息(但带有适当的 .so 文件名(,所以我怀疑它的"环境"设置有问题。 phpinfo()
;表明司机都在那里工作。
所有版本的 php
sudo apt-get purge `dpkg -l | grep php | awk '{print $2}' | tr "n" " "`
并且仅安装最新版本
apt install php libapache2-mod-php php-mysql php-xml php-soap php-gd php-mbstring
为我解决了问题。
在这篇文章的帮助下解决了它。
更改了 php.ini:
extension=/usr/lib/php/20151012/mysqli.so
extension=/usr/lib/php/20151012/mysqlnd.so
自
extension=/usr/lib/php/20151012/mysqlnd.so
extension=/usr/lib/php/20151012/mysqli.so
即:颠倒了 2 个条目的顺序,将 mysqlnd.so 放在第一位。
现在我都很开心,热情洋溢地进行远程计算。