我有 5 个虚拟主机httpd.conf
。除了其中一个之外,所有这些都具有以下配置。
<Location />
Order Deny,Allow
Deny from all
Allow from IP.ADDRESS.GOES.HERE
</Location>
我认为最好告诉所有虚拟主机除了一个之外都拥有这个。目前我正在一一告诉每个虚拟主机要有这个。是否有一种通配符方法可以将此设置应用于所有虚拟主机,然后从其中一个虚拟主机中删除此节httpd.conf
?
答案1
<Location>
是的,您可以在主 apache 配置中的指令之前定义全局<Virtualhost>
,然后<Location>
在虚拟主机之一内使用相同的内容覆盖它。
<Location />
# some directives
</Location>
<Virtualhost *:80>
<Location />
# some other directives
</Location>
<Virtualhost>
看https://httpd.apache.org/docs/current/mod/core.html#location和https://httpd.apache.org/docs/current/mod/directive-dict.html#Context更多 - 其有效的原因是因为<Location>
在“服务器配置”和“虚拟主机”上下文中都有效。