我正在尝试将我的网站 docker 。我已经启动并运行了Nginx和PHP,并且除了无法连接数据库外,它都可以正常工作。页面加载后出现错误:

Fatal error: Uncaught Error: Class 'MySQLi' not found in /private/conn.php:8 Stack trace: #0 /public_html/index.php(2): require() #1 {main} thrown in /private/conn.php on line 8

我在第8行上的连接线路是:
$db = new mysqli("$host", "$user", "$pass", "$db", "$port");

现在,这在我的旧设置上可以正常工作,但是自从移至新版本并安装php7.1.5以来,我无法使其运行。现在,我还没有使用mysqlnd,所以这对我来说可能是一个误解,但是mysqlnd包含mysqli驱动程序。

phpinfo的输出:
php - 找不到MySQLi dockerized php-LMLPHP
php - 找不到MySQLi dockerized php-LMLPHP

我如何才能运行它?还是我现在应该使用其他驱动程序?

最佳答案

您需要在Dockerfile中启用php扩展名:

FROM php:7
RUN docker-php-ext-install mysqli

无需触摸php.ini

关于php - 找不到MySQLi dockerized php,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46879196/

10-15 18:19