W7, apache, php: 403 Forbidden 您无权访问 /phptest/phpinfo.php

W7, apache, php: 403 Forbidden You don't have permission to access /phptest/phpinfo.php

关于这个有很多问题,但我仍然无法让它工作。

我正在 W7 Pro PC 上安装 Apache 2.4 和 PHP 5.4.37。 PHP 是 运行 作为加载模块。如果分别安装在c:\apache24和c:\php,文档根目录默认在c:\apache24\htdocs,一切正常。

然而,我随后决定我想要 f:\webroot(本地驱动器)的文档根目录,对 httpd.conf 中的文档根目录进行必要的更改。 webroot 具有与 c:\apache24\htdocs 相同的所有权限,但我在标题中收到错误消息。

Webroot 中的正常 index.html 文件可以提供,只是任何 PHP 文件都不能提供。

我注意到 Apache 服务是用用户 LocalSystem 启动的。所以我尝试了其他各种方法。我什至尝试 运行 从命令行(而不是作为服务)以管理员身份登录的 Apache,它应该可以访问任何东西,但没有任何区别 - 同样的消息。

不明白这是怎么回事。我可以回到默认文档根目录,但在某些时候需要访问系统上其他地方的文件夹,所以我想我会遇到同样的问题。

更多信息:

尝试了 中命令的各种组合都没有效果,但发现如果在 中设置 'Require all granted' 而不是 'Require all denied',它作品。但是,不确定(a)这是否明智(可能不明智)和(b)为什么无论如何都需要它。关于我应该将其设置为什么有什么建议吗?

解决了这个问题:

您不仅需要在 httpd.conf 中设置文档根目录和匹配的 部分条目,还需要在 .. .\conf\extras\httpd-vhosts.conf 文件.

中设置 'Require all granted' 是一个错误。