我最近在 Windows 7 x64 上升级到了 Apache 2.4.7 (x86) 和 PHP 5.5.9 (x86 作为 Apache 模块)。我从apachelounge.com以及来自的 PHP 二进制文件php.net 论坛。
现在错误日志不断告诉我 PHP 构建 API 和某些扩展 API(例如 php_fileinfo.dll)不匹配。我使用之前安装时使用的原始 MSI 降级回 Apache 2.2.22 和 PHP 5.3.6,但还是遇到了同样的问题!
有人知道这是什么原因造成的吗?
答案1
我大胆猜测你要么没有正确卸载以前的版本。
或者
您曾一度将某些内容从 Apache 或 PHP 复制到某个地方,比如 C:\windows\system32 或类似的位置,而当您卸载以前的版本时,这些内容并没有被删除,这就是导致问题的原因。
或者
您已将一些内容添加到 PATH 但并未进行更改。
无需将任何内容复制到 Windows 文件夹或将任何内容硬编码到您的 PATH 中。
答案2
解决了!我不确定是什么导致了这个问题,但我确信这与 php.ini 中的“extension_dir = "c:/php/ext"”行有关。
我移动了 dll 文件,发现它们在 C:\PHP 中时可以正常工作。然后我将扩展文件夹重命名为 C:\PHP\extensions,并修改了 php.ini 以反映它,一切正常!然后我将其改回来,它运行正常!