我有一个服务于不同位置的 Apache 实例,例如
https://host.com/jira
https://host.com/svn
https://host.com/websvn
https://host.com/phpmyadmin
这些规则都基于 IP 地址/主机名,但其中一些使用相同的配置,因此每次我都必须重复相同的规则:
Order Deny,Allow
Deny from All
Allow from 10.35 myhome.com mycollegueshome.com
有没有办法让它们可重复使用,这样我就不必每次发生更改时都更改每个实例?也就是说,我可以编写一次,然后将其用于几个位置吗?也许可以使用 SetEnvIf?如果我可以做类似这样的伪配置就好了:
<myaccessrule>
Order Deny,Allow
Deny from All
Allow from 10.35 myhome.com mycollegueshome.com
</myaccessrule>
<Proxy /jira*>
AccessRule = myaccessrule
</Proxy>
<Location /svn>
AccessRule = myaccessrule
</Location>
<Directory /websvn>
AccessRule = myaccessrule
</Directory>
答案1
您正在寻找 mod_macro。
答案2
如果您已经在使用 mod_perl,请记住 mod_perl 包装了 Apache 的配置位以及数据服务位。