在整个互联网的web结构中,HTTP代理服务器是一个出现频率极高的组件(其他还有浏览器、缓存服务器、web服务器、DNS解析服务等),理解HTTP代理服务器的原理有助于我们更好人事web架构
客户端 -----请求-----》 代理服务器 -----包装后的请求------》 目标服务器
上面所示就是一个最原始代理服务器的角色:假设你现在在公司办公室里访问http://www.qq.com ,那通常来讲你是通过你们公司
的代理服务器在畅游互联网。你本地浏览器的HTTP请求先到达代理服务器,代理服务器收到你的请求之后解析你的请求报文,然后向
目标服务器发起HTTP请求,收到目标服务器的响应之后,再把响应报文回复给你。这就是代理服务器的工作流程
有些公司需要限制某些网站不能被员工访问,那么就可以在代理服务器上添加策略:当检测到有员工访问该网站时直接提示;
公司出于安全的考虑,避免员工访问的网站带入病毒,因为所有请求和响应都会经过代理,所以就可以在代理上做病毒检测
假设员工A和员工B想访问同一个网址,那代理服务器可以缓存这个网址,这样员工A和B的两个请求就可以缩减为一个,降低了网络宽带的开销
总而言之,代理服务器是一个口子,有了这个口子,我们就可以在这个口子上做任何事情
在现实的架构中,代理服务器与缓存服务器的角色越来越模糊,或者说通常把两者合二为一-------一个位于客户端和服务端中间位置的服务器
既有代理功能又有缓存功能,比如我们熟悉的CDN