我们在 Windows Server 2008 机器上有一个 Apache 服务器,用于为客户提供特定的安全流量,就像网关一样。
现在,我只想允许特定范围的安全 URL 的流量,这些 URL 由通配符 uri 定义:****secure.mysite.com****,并拒绝所有其他对 Apache 的 http 或 https 请求
如何在 Apache httpd conf 文件中进行设置?
谢谢
答案1
你可以允许通过环境变量进行访问,该变量仅通过您想要匹配的请求 URI 模式设置设置环境变量。
在您的主机或虚拟主机中,使用您想要允许的 URI 进行下列配置:
SetEnvIf Request_URI ^/requests/you/want/.* allow
SetEnvIf Request_URI ^/requests/you/want/.+?\.php$ allow
如果您正在处理来自 Apache 的请求:
<Location />
Order Deny,Allow
Deny from all
Allow from env=allow
</Location>
或者通过代理mod_proxy,您可能希望将 URI 匹配与一些 IP 限制结合起来,这样您就不会开放代理。
SetEnvIf Remote_Addr ^10\..+ deny
<Proxy *>
Order Allow,Deny
Deny from env=deny
Allow from env=allow
</Proxy>
在这种情况下,如果 IP 是不是在10.0.0.0/8
拒绝范围内,Order
很重要