Apache - 取消设置指令

Apache - 取消设置指令

有没有办法“取消设置”任意的 Apache 指令,比如逐字重复它,但Unset在它前面加上或其他内容?

例如,假设在服务器配置级别我有:

ScriptAliasMatch "^/cgi-bin(.*)" "/usr/local/apache/cgi-bin$1"

对于其中一个VirtualHosts,我希望能够放置如下内容:

Unset ScriptAliasMatch "^/cgi-bin(.*)" "/usr/local/apache/cgi-bin$1"

如果我遗漏了针对该指令的特定方法,那么我也对此感兴趣(我能想到的最好的办法是通过 mod_rewrite 阻止对该模式的访问),但我特别感兴趣的是是否有办法取消设置,因为这对将来来说可能会很方便。

答案1

我认为,如果服务器范围的设置对于虚拟主机来说是不可接受的,那么最简单的解决方案就是将指令从服务器级别移到虚拟主机级别。

在每个虚拟主机中使用默认值Include,并在偏离标准的虚拟主机中省略它。

新的<If>(httpd 2.4)也可能是一个选择。

相关内容