5.8 反向代理
基于名称的虚拟主机
图5-16 基于名称的虚拟主机的工作原理
工作原理:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
2.构建基于名称的虚拟主机
图5-18 基于名称的反向代理.
1.客户端发出请求给www.v2.com
2.DNS服务器进行名称解析
3.反向代理服务器提出网页请求
4.代理服务器接收web服务器返回的网页,并回送给客户端。
配置:
32 acl domain_v1 dstdomain
33 acl domain_v2 dstdomain
34 acl domain_v3 dstdomain
35 acl web_port port 80
42 http_access allow domain_v1 web_port
43 http_access allow domain_v2 web_port
44 http_access allow domain_v3 web_port
72 http_port 80 vhost
89 cache_peer 192.168.1.20 parent 80 0 no-query originsercer name=web_server1
90 cache_peer 192.168.1.30 parent 80 0 no-query originsercer name=web_server2
92 cache_peer_domain web_server1
93 cache_peer_domain web_server2
第32-35行:分别定义客户端通过反向代理能够访问的“主机”及“端口号”。
第42-44行:限制客户端通过反向代理所能访问的范围。
第72行:设置squid所服务的端口号为80。
第89行-90行:设置真实Web服务器所在的IP地址列表,并定义其代表名称。
第92行-93行:告诉反向代理,如果客户端送来的“主机名称”为www.v1.com或者www.v2.com,请到web_server1帮客户端取得其所要访问的网页数据,如果客户端送来的主机名称是www.v3.com,则到web_server2取得客户端所要访问的网页数据。