Apache.conf文件;“要求全部”;效用?

Apache.conf文件;“要求全部”;效用?,apache,fedora,Apache,Fedora,我正在使用Fedora30上的Apache.conf文件 在/etc/httpd/conf/httpd.conf中,有: <Directory /> AllowOverride none Require all denied </Directory> IncludeOptional conf.d/*.conf 这意味着“localhost”从这个“/var/www/html”目录开始 问题1:目录“/”使用“Require all denied”有什么

我正在使用Fedora30上的Apache.conf文件

在/etc/httpd/conf/httpd.conf中,有:

<Directory />
    AllowOverride none
    Require all denied
</Directory>
IncludeOptional conf.d/*.conf
这意味着“localhost”从这个“/var/www/html”目录开始

问题1:目录“/”使用“Require all denied”有什么用,而DocumentRoot处于较低的级别(因此服务器将不提供较高级别保留库中的任何文件)

在httpd.conf的末尾,有:

<Directory />
    AllowOverride none
    Require all denied
</Directory>
IncludeOptional conf.d/*.conf
因此,我在“/etc/httpd/conf.d”中创建了一个personal.conf;在我设置的内部:

<Directory "/var/www">
    AllowOverride None
    Require all denied
</Directory>

不允许超限
要求全部拒绝
我重新启动了Apache(systemctl restart httpd.service),但是localhost/index.html(也称为“DocumentRoot”/index.html或“/var/www/html”/index.html)仍然可用

它的作用就好像httpd.conf中的该指令是优先的:

<Directory "/var/www/html">
    Require all granted
</Directory>

要求所有授权
问题2:那么“requireall denied”在更高级别的存储库中有什么用途呢

谢谢你的帮助:)

问题1:目录“/”使用“Require all denied”有什么用,而DocumentRoot处于较低的级别(因此服务器将不提供较高级别保留库中的任何文件)

问题2:那么“requireall denied”在更高级别的存储库中有什么用途呢

如果
Require all denied
不存在,服务器可以轻松地为文档根目录下的文件提供服务,您只需要在服务器中进行一个小的错误配置。例如,想象一个
别名

Alias /etc /etc
这将允许您读取密码文件或其他敏感内容。对于默认配置,您需要一个明确的覆盖,如

<Directory /etc>
   Require all granted
</Directory>

要求所有授权
这样做

指令

<Directory />
    AllowOverride none
    Require all denied
</Directory>

不允许超限
要求全部拒绝

作为一种安全机制(“尽可能严格”)用于阻止对
/var/www/html
目录下的任何访问。

谢谢您的回答

现在回答问题2;让我们想象一所房子:室外[门1]大厅[门2]走廊[门3]客厅

在/etc/httpd/conf/httpd.conf中,我关闭了房子的前门

<Directory />
    AllowOverride none
    Require all denied
</Directory>

不允许超限
要求全部拒绝
我打开大厅和走廊之间的门[门2]

<Directory "/var/www">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

不允许超限
#允许开放访问:
要求所有授权
我打开走廊和客厅之间的门[门3]

<Directory "/var/www/html">
    AllowOverride None
    Require all granted
</Directory>

不允许超限
要求所有授权
然后在“/etc/httpd/conf.d”中的personal.conf文件中关闭大厅和走廊之间的门[door 2]:

<Directory "/var/www">
    AllowOverride None
    Require all denied
</Directory>

不允许超限
要求全部拒绝
为什么客厅仍然可以进入(localhost/index.html或/var/www/html/index.html可以进入)而[door 2]是关闭的?

我需要明确指出:

<Directory "/var/www/html">
    AllowOverride None
    Require all denied
</Directory>

不允许超限
要求全部拒绝
在personal.conf中

若要获取“禁止访问此资源,您没有访问此资源的权限”。消息

再次感谢