Proxy命令后面的*号表示客户机使用代理服务器访问的目标地址。 在上面的两个示例中,*号表示所有地址。 这意味着禁止使用代理服务器访问所有地址。 如果只想禁止某个地址,请参考以下示例。
Order deny,allow
Deny from all
Allow from 127.0.0.1
订单allow,deny
从所有
Deny from 127.0.0.1
上面的示例意味着只允许访问本地计算机
http://www.google.com/
然后,本地计算机
http://www.yahoo.co.jp/r/
访问的资源。 Apache的Proxy命令当前格式不支持(即不能写)多个目标地址,因此如果您想限制多个目标地址,则必须使用多个Proxy命令。
如果希望限制某些用户和所有用户访问特定地址,可以使用代理块命令。
proxyblockmicrosoftco.jp www.Google.com
此命令阻止三种类型的目标地址: microsoft地址、co.jp地址和www.google.com地址。 但是实际上,如果你使用IE测试
http://www.google.com/
和
http://www.google.co.kr/
谷歌韩国站]都将无法访问
http://www.google.co.kr/
然后呢
不符合上面区块的规则。 这是因为Apache启动时,块地址中看起来像主机名或域名的字符串将被域名解析,解析成功时相应的目标将被阻止
IP地址。 由于www.google.co.kr和www.google.com的IP地址相同,www.google.co.kr也同时被阻止。 又来了
此外,由于Apache试图解析域名,因此故意在空的情况下使用代理块会增加Apache的启动时间。
另外,请注意,如果写ProxyBlock *,代理服务器将无法访问地址。
最后介绍二级代理。 使用Apache,可以创建二级代理,以允许已经是代理服务器的Apache通过其他代理服务器连接到internet。 添加以下命令:
proxy remote * http://12.34.56.7833608080
也就是说,Apache可以使12.34.56.78:8080成为代理服务器。 ProxyRemote命令后的第一个参数表示协议名称或目标地址。 示例:
proxyremoteftp http://12.34.56.78:8080 #对所有FTP请求使用l2代理
访问proxy remote http://www.Google.com/http://12.34.56.7833608080 # www.Google.com时使用l2代理
转载于:https://www.cn blogs.com/red-fox-qhq/p/3995896.html