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


13

该域今天早上在工作,现在我收到403错误,并且错误日志中也显示了上述消息。我没有使用.htaccess文件,但是我一直在服务器上进行一些复制,因此可能造成混乱,但对该域没有任何更改(除非偶然!)。这pcfg_openfile到底是什么东西?

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

Answers:


19

您可能已更改了Web服务器在其中查找.htaccess的目录(或其父目录)的权限,因此Web服务器无法再检查是否存在.htaccess文件。

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

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

检查当前目录中以及返回到文档根目录的每个父目录中.htaccess文件的存在,读取和解析,对性能的影响很小。它很小,但是在有很多请求时加起来。


发现。我让somehome设法更改了/ home目录上的权限,这搞砸了其他所有内容。非常感谢!
user19196

2

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

为了让apache查找文件,它必须在树上搜索。如果root:root目录没有全局执行访问权限,则无法执行此操作。

我已经绊了几次了.... :-)


“如果root:root目录没有全局执行访问权限,则无法执行此操作。” 并非总是如此。如果您正在运行suPHP,则PHP以文件所有者的身份运行。从理论上讲,您应该能够通过切换到文件拥有用户来测试Apache的访问权限,并查看是否可以在那里导航。
Buttle Butkus
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.