我在 Windows 8 上使用 Apache/PHP 时遇到问题。我之前一直在 XP(以及 MySQL)上使用它们,没有任何问题。我从未使用过 Windows 7。
Apache 安装没有问题。一切正常,包括我所有的虚拟服务器。PHP 安装成功,安装将条目放入 httpd.conf 中而不会出现错误。但是,当我在安装 PHP 后尝试加载 Apache 时,Apache 不会加载。
当 PHP 条目包含在 httpd.conf 中时,Apache 返回的错误让我感到困惑:
Syntax error on line 1029 of C:/Program Files/Apache Group/Apache2/conf/httpd.conf:
Cannot load C:/Program Files/PHP/php5apache2_2.dll into server: The specified module could not be found.
这些行是:
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "C:\Program Files\PHP\"
LoadModule php5_module "C:\Program Files\PHP\php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
(第 1029 行是 LoadModule 行)。dll 的位置绝对正确。该行的语法由 PHP 插入。我已经将语法与我拥有的以前版本的 httpd.conf 进行了比较,它看起来是正确的。我认为语法错误是一个红鲱鱼。
我努力了:
- 在 dll 位置将反斜杠切换为斜杠。
- 将 PHP 添加到路径中。
- 在两个序列中安装 Apache 和 PHP。
- 检查 PHP 文件夹和各个文件的权限以确保 SYSTEM 已读取/执行。
注释掉 PHP 行和 Apache 加载正常。如果我注释掉 LoadModule 行并离开 PHPIniDir 行,它仍然会失败。Apache 似乎表现得好像它看不到 PHP 目录,但我不知道为什么。
Windows 事件日志中没有任何内容。最新版本的 PHP 和 Apache。我有点不知所措,下一步该尝试什么。请问有什么建议吗?