You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP7配置php.ini后mysqli扩展仍未激活,求解决方法

解决mysqli扩展无法激活的排查思路

我之前配置PHP7+Apache的时候也碰到过几乎一样的问题,给你几个实用的排查方向,一步步来应该能解决:

  • 确认修改的是Apache实际加载的php.ini文件
    很多人容易踩这个坑:PHP目录下通常有php.ini-development和php.ini-production两个模板文件,如果你只是随便改了其中一个,但Apache没加载它,那所有配置都白搭。打开phpinfo()页面,找到Loaded Configuration File这一项,看显示的路径是不是你修改的那个ini文件。如果不是,去修改正确的那个文件,然后重启Apache。

  • 检查Apache配置里的PHPIniDir设置
    确保Apache的httpd.conf文件里有指定PHP的配置目录,比如:

    PHPIniDir "C:/php"
    

    要是没加这一行,Apache可能找不到你设置的extension_dir和扩展启用配置,自然加载不了mysqli。添加后记得重启Apache。

  • 确认PHP和Apache的位数完全匹配
    这是另一个高频坑:如果你装的是64位Apache,那PHP必须也是64位的;32位Apache对应32位PHP。位数不匹配的话,就算dll文件存在,也根本加载不进去。去PHP和Apache的下载页面确认你下载的版本位数一致。

  • 查看Apache错误日志找具体原因
    扩展加载失败通常会在Apache的错误日志里留下线索。去Apache安装目录的logs文件夹里找error.log(或者用Apache控制台看实时日志),搜索mysqli或者php_mysqli.dll,比如会看到类似Cannot load php_mysqli.dll into server的错误,后面可能会跟着具体原因(比如依赖缺失、文件损坏),根据提示针对性解决。

  • 安装对应版本的VC运行库
    PHP7不同版本需要对应的VC运行库:PHP7.0-7.1需要VC14,PHP7.2及以上需要VC15/VC16。如果你的系统里没装对应的运行库,扩展会加载失败。去微软官网下载对应版本的VC Redistributable运行库安装,然后重启Apache试试。

  • 用命令行PHP验证扩展是否能加载
    打开命令提示符,切换到PHP目录,运行php -m,看看输出的模块列表里有没有mysqli。如果命令行里能看到,但Apache的phpinfo里没有,说明问题出在Apache的配置或者权限上,比如Apache运行用户没有访问php_mysqli.dll的权限。

  • 检查文件权限
    确保Apache的运行用户(通常是IUSR或者Network Service)对C:\php\ext\php_mysqli.dll文件有读取权限。右键这个dll文件,打开「属性」-「安全」选项卡,添加对应的用户并赋予读取权限,然后重启Apache。

内容的提问来源于stack exchange,提问作者Celia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 10:04:50