权限被拒绝:/home/.htaccess pcfg_openfile:无法检查 htaccess 文件

权限被拒绝:/home/.htaccess pcfg_openfile:无法检查 htaccess 文件

这个域名今天早上还在运行,现在我收到 403 错误,错误日志中出现了上面的消息。我没有使用 .htaccess 文件,但我一直在服务器上进行一些复制,所以可能把事情搞乱了,但这个域名没有变化(除非是意外!)。这个 pcfg_openfile 到底是什么?

谷歌搜索了很多次,但似乎没有一个解决方案适合这些情况。服务器是 ubuntu Hardy Heron。

答案1

您可能已经更改了 Web 服务器正在寻找 .htaccess 的目录(或其父级之一)的权限,以便 Web 服务器无法再检查是否存在 .htaccess 文件。

首先修复目录的权限(需要由 Web 服务器进程接收,因此是 755 或 775,取决于您是否希望目录为组可写)。请注意,您必须确保每个备份到文件系统根目录(即 /)的父目录的权限都由 Web 服务器接收。

然后,如果您实际上并没有使用 .htaccess 文件并且不打算在将来使用它们(即您打算将所有配置放入 httpd.conf/apache.conf),那么请在 apache 配置中禁用 htaccess 文件。

检查当前目录以及每个父目录直到文档根目录中是否存在 .htaccess 文件,读取和解析这些文件时,会对性能造成轻微的损失。 虽然损失很小,但是当请求很多时,损失就会累积起来。

答案2

如果不明显服务器无法读取 .htaccess(0755 或 .htacess 并且树的其余部分位于 www-data 组中),请搜索仅 onwer:group 的更高目录根,该目录不具有世界执行访问权限。

Apache 要找到文件,必须沿着树向下搜索。如果 root:root 目录没有全局执行权限,则无法执行此操作。

我已经被这个问题绊倒过几次了……:-)

相关内容