Apache文件夹权限错误

Apache文件夹权限错误

我有一个文件夹名称public,我将 Apache 设置为从中提供文件,由于某种原因,我收到了 403 错误消息:

您没有权限访问此服务器上的 /。

我的解决方案是在它旁边创建另一个文件夹 ( test) 并使用它来提供文件。

我不明白的是,据我所知,为什么两个文件夹之间的权限是相同的,但使用第一个文件夹却会给我带来权限错误。

我该如何进一步诊断?

ls -l给出:

drwxrwxr-x 2 daniel daniel 4096 Apr 26 19:10 public
drwxrwxr-x 2 daniel daniel 4096 Apr 26 19:10 test

编辑

内容/etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
    DocumentRoot /home/daniel/public/default/public/
    DirectoryIndex index.html index.php
    LogLevel warn
    ErrorLog /home/daniel/public/default/log/error.log
    CustomLog /home/daniel/public/default/log/access.log combined
</VirtualHost>

我有以下指令设置/etc/apache2/apache2.conf

<Directory /home/daniel/public/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

从下面/home/daniel/public/default运行ls -Zd public test给出

drwxrwxr-x 2 daniel daniel ? 4096 Apr 28 13:44 public
drwxrwxr-x 2 daniel daniel ? 4096 Apr 28 13:44 test

答案1

我建议检查 Apache 错误日志(在/var/日志/阿帕奇/在 Debian/Ubuntu 或/var/log/httpd/在 RedHat 及其衍生产品上)。错误日志将为您提供更详细的错误指示;哪里有权限错误或者其他问题。

另一件要尝试的事情是尝试使用 Apache 的用户来统计您尝试使用 sudo 访问的文件。大致如下:

sudo -u apache2 stat /var/www/public/index.html

假设您的 Web 根目录位于 /var/www 中,并且您的 Apache 服务器以 apache2 用户身份运行。上述命令将确认 Apache 进程是否能够读取有问题的文件(具有足够的文件系统权限)。如果它是可读的(您得到统计输出而不是权限被拒绝),那么问题很可能出在 Apache 服务器配置本身,就像@mdpc 建议的那样。

答案2

查看您的 apache 配置文件,看看某些目录中是否有任何允许/拒绝指令。

相关内容