Windows 10/Apache24/PHP 7.4.19 未加载 mysqli

Posted

技术标签:

【中文标题】Windows 10/Apache24/PHP 7.4.19 未加载 mysqli【英文标题】:Windows 10/Apache24/PHP 7.4.19 not loading mysqli 【发布时间】:2021-08-13 17:07:53 【问题描述】:

我有一个 WAMP 堆栈,我将它放在我的 Windows 10 机器上。我加载了 mysql、Apache24 和 php。 MySQL、Apache 和 PHP 工作但我无法加载扩展。我确实在 php.ini 中设置了 extension_dir。我尝试了 extension=mysqli 和 extension=php_mysqli.dll 但都没有工作。事实上,我认为没有加载任何扩展。

PHP 安装的是 C:\php。 Apache 在 C:\Apache24 中。

这就是我认为我的 PHP.ini 的相关部分的内容。其他一切都是默认的:

[PHP]

extension_dir = "C:\php\ext\"

;extension=bz2
extension=php_curl.dll
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
extension=php_mbstring.dll
;extension=exif      ; Must be after mbstring as it depends on it
extension=php_mysqli.dll
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=shmop

【问题讨论】:

尝试运行php --ini 以检查您的配置是否已加载。然后在服务器/浏览器上尝试phpinfo(),因为很多时候你有 cli 和服务器 php 版本的不同配置。 好的。 php.exe --ini 显示 c:\php\php.ini 但 phpinfo() 在 ini 文件中显示为空白。我需要设置什么才能让 phpinfo 读取该 .ini 文件? 大多数时候 php-cli 和 server 的配置不同。您可以设置PHP_INI_SCAN_DIR environemnt 变量并重新启动服务器或尝试在PHP Manual - The configuration file 中查看更多信息 好的,我明白了。我向 httpd.conf 添加了一个 PHPIniDir 指令并加载了它。现在我的应用程序可以工作了。 -- 谢谢你 【参考方案1】:

您可以在上面的 cmets 中看到这一点,但以防万一,这是我解决此问题的方法:

    PHPInfo() 显示没有加载 php.ini。 我在 https.conf 文件中添加了 PHPIniDir 指令,世界是一个快乐的地方。

希望这个答案对其他人有所帮助!

感谢 Code Spirit 为我提供了解决问题所需的线索。

【讨论】:

另外,我想指出 php.inisymlink 在我的情况下不起作用。一旦我用 NTFS hardlink 替换它,一切正常。

以上是关于Windows 10/Apache24/PHP 7.4.19 未加载 mysqli的主要内容,如果未能解决你的问题,请参考以下文章

在 Win10 / Apache 2.4 / PHP 7.0.10 x64 下未加载 cURL

apache24/PHP8 windows 10 localhost 无法连接

Apache 2.4 无法在 Windows 10 上安装

windows10搭建django1.10.3+Apache2.4

在 Windows 10 和 Apache2 上运行 phpMyAdmin 时出现问题

如何在 Windows 10 中关联 cgi 扩展