<Proxy *>
Order deny,allow
Deny from all
Allow from cdn1.domain.com cdn2.domain.com cdn3.domain.com cdn4.domain.com cdn5.domain.com
</Proxy>其实比那要长得多。是否可能以某种方式使用regex?我在运行2.2
发布于 2013-07-22 16:50:35
如果您可以允许domain.com中的所有主机,那么它非常简单:
Allow from .domain.com如果您只需要允许那些cdn*主机,那么您就倒霉了-- regex在Allow中不受支持,其他访问控制机制也无法执行必要的反向DNS查找(比如mod_rewrite或带有Allow from env=的SetEnvIf )。
正如EightBitTony在评论中提到的,您需要使用其他一些条件来控制访问-- IP范围将是最好的。
编辑:实际上,mod_rewrite可能能够使用REMOTE_HOST变量。也许可以试试这样的东西?不确定它是否执行反向查找和正向查找来确认,因此安全性可能不那么可靠。
RewriteCond %{REMOTE_HOST} ^cdn\d+\.domain\.com$
RewriteRule ^ - [E:CDNALLOW]
Allow from env=CDNALLOW发布于 2013-07-22 16:49:29
允许指令的文档非常好,它说允许将接受部分名称
Allow from domain.com 只要您不介意domain.com的其他部分访问代理,就会稍微简化它,对于主机的正向/反向DNS查找也有一些注意事项。
如果cdn机器共享子网或部分子网,那么您也可以使用它做一些事情。
发布于 2013-07-22 16:50:37
1)如果domain.com下的任何内容都是可以的,您可以使用一个引导点(即,.domain.com )
2)您可以填充一个环境变量,并具有Apache引用。
allow from env=allowed_cdn_hostshttps://serverfault.com/questions/525353
复制相似问题