HTTP代理服务器的工作原理

在http通信链上,客户端和目标服务器之间通常存在某些中转的代理服务器,他们提供对目标资源的中转访问,一个HTTP请求可能被多个代理服务器转发,后面的服务器成为前面的服务器的上游服务器
代理服务器根据其使用方法和作用分为正向代理服务器,反向代理服务器,以及透明代理服务器
(1)正向代理服务器要求客户端自己设置服务器的地址,客户的每次请求都将发到该代理服务器,并由该代理服务器来请求目标资源,比如处于防火墙内部的局域网机器要访问internet,或者要访问一些被屏蔽掉的国外网站,就需要正向的代理服务器。
(2)反向代理则被设置在服务器端,因而服务器不用设置,反向代理服务器是指代理服务器 来接受来自internet的资源请求,然后将请求法给内部网络的服务器上,并将内部服务器得到的结果返回给客户,这种情况代理服务器表现为一个真实的服务器,各大网站通常设置了多个代理服务器,所有在不同的地方ping同一局域网可能得到不同的IP。

HTTP代理服务器的工作原理_第1张图片
如图,正向代理服务器和客户主机处于在同一逻辑网络中,该逻辑网络可以是一个本地的LAN,也可以是一个更大的的网络,反向的代理服务器和真正的web服务器也位于同一逻辑网络中,通常由提供该网站的公司来管理和配置。
(3)透明代理服务器只能设置在网关上,用户访问Interneet数据报必然经过网关,如果在网关上设置代理服务器,则该代理服务器对用户来说是透明的,透明代理服务器可以说是正向服务器的一种特殊情况。
代理服务器通常还提供缓存目标资源的功能,这样用户下次访问同一资源时速度将很快,优秀的开源软件squid,varnish都是提供缓存功能的代理服务器软件,其中squid支持所有代理的方式,而warnish仅提供反向的代理。

你可能感兴趣的:(linux)