.htaccess 权限被拒绝。无法检查 htaccess 文件

.htaccess 权限被拒绝。无法检查 htaccess 文件

在向我们的虚拟服务器添加子域名时,我遇到了一个奇怪的问题。我以前做过类似的子域名,而且运行良好。

当我尝试访问子域时,出现 403 禁止错误。

我检查了错误日志并发现以下错误:

pcfg_openfile: unable to check htaccess file, ensure it is readable

我在 Google 上搜索过,但只找到了有关文件和文件夹权限的解决方案,我检查过但解决方案并没有解决。我还看到了 Frontpage Extensions 的问题,但服务器上没有安装它。

编辑

忘了说子域名目录中没有 .htaccess 文件

编辑#2

仍然无法找到解决方案。我唯一能找到的是:

  • 这似乎不是任何 .htaccess 文件的问题(我尝试创建具有正确用户权限的空白文件)。
  • 这似乎不是任何文件夹权限的问题,因为它们都设置正确。
  • 子域名的设置方式没有问题,因为我尝试将 DocumentRoot 指向另一个文件夹,并且运行正常。我之前也成功设置了子域名,没有任何问题。

编辑#3

查找更多信息。我认为现在不可能是文件权限问题,因为如果我通过转到服务器 IP 然后转到托管网站的目录来访问它,一切都会正常工作(减去样式表和图像,这只取决于它们的链接方式)

答案1

您正在使用 Apache ITK MPM 吗?版本 2.2.17 修复了一个可能导致 403 错误的错误(请参阅变更日志)。

使用 AssignUserId 指令时我遇到了同样的问题。当我授予文件和文件夹全局可读/可执行权限后,问题就解决了。

答案2

我遇到了类似的问题:Apache 无法访问我的“/var/www”文件夹。我的 Web 服务器在 VirtualBox 主机内运行,www 文件夹在客户机 (SLES11) 和主机 (Windows) 之间共享。问题是 www 文件夹是 VirtualBox 文件系统挂载点,而 Linux Apache 用户 (nobody) 无权浏览该挂载点。

为了解决这个问题,我将 nobody 用户添加到 VBOXFS 组:

$>usermod -G vboxsf nobody

我必须重新启动客户机才能让这个修改反映到 Apache 上,现在它可以正常工作了。

答案3

您以哪个用户身份编辑了 .htaccess 文件?您能列出此文件的权限吗?可能是因为运行 apache 的用户无法读取该文件。

答案4

尝试在该目录中创建一个具有正确权限的空白 htaccess 文件,因为出于某种奇怪的原因,它可能希望读取一个但却无法读取

403 错误可能是由于不允许对该目录进行目录索引

相关内容