今天碰到一个非常邪门的问题,window环境下的php 拓展 pdo_mysql 好像装不上的样子
打开网站(thinkphp5.1)马上提示 could not find driver
用此关键字浏览器搜索后得到的答案都是 pdo_mysql 未安装,于是 php -m 查看当前拓展,发现此拓展稳稳当当的在列表当中,瞬间懵逼
于是打开phpinfo查看确认,发现phpinfo中与php -m 不一样,mysqli 拓展确实没有装上,但是php.ini确实是打开了此拓展的
在自己本地环境打开phpinfo对比仔细检查线上 phpinfo 的内容,终于让我发现了一点端倪
Configuration File (php.ini) Path | (none) |
Loaded Configuration File | (none) |
线上这两个配置的值是none, 而本地的环境值是正常的配置路径。如下图
问题好像找到了,但是这两个值到店怎么设置又是一个问题,各种搜索后尝试了各种办法全部无效,在这里浪费了我几个小时
在我觉得一个最不可能的方式中找到了(之前一直以为修改php,原来可以修改apache的配置)
比如我的 apache 目录 C:\Program\Apache24\conf\httpd.conf 在httpd.conf 中加入 php.ini 路径
PHPIniDir C:\Program\php\php.ini
(记得换成你自己的php.ini路径)
红色部分是我加入的,加上之后重启 apache
httpd -k stop
httpd -k start
终于解决~