什么是正向代理和反向代理?
什么是代理?
代理(Proxy)也称网络代理,是一种特殊的网络服务,允许一个终端(一般为客户端)通过这个服务与另一个终端(一般为服务器)进行非直接的连接。一些网关、路由器等网络设备具备网络代理功能。一般认为代理服务有利于保障网络终端的隐私或安全,在一定程度上能够阻止网络攻击。
提供代理服务的电脑系统或其它类型的网络终端称为代理服务器英语:Proxy Server。一个完整的代理请求过程为:客户端首先根据代理服务器所使用的代理协议,与代理服务器创建连接,接着按照协议请求对目标服务器创建连接、或者获得目标服务器的指定资源(如:文件)。在后一种情况中,代理服务器可能对目标服务器的资源下载至本地缓存,如果客户端所要获取的资源在代理服务器的缓存之中,则代理服务器并不会向目标服务器发送请求,而是直接传回已缓存的资源。一些代理协议允许代理服务器改变客户端的原始请求、目标服务器的原始响应,以满足代理协议的需要。
另外在部分实行网络审查的国家(,可以通过使用代理服务器的方式以突破网络审查(俗称“翻墙”)
详情见维基百科:代理服务器
什么是正向代理?
正向代理主要的代理对象是用户客户端,代理服务器位于用户客户端与网站服务器之间,主要用于解决用户客户端的IP访问受限问题和网络安全性问题。
用户访问目标网站服务器时,访问请求会先发送到代理服务器,再由代理服务器转发给目标网站;当目标网站服务器发回响应数据时同样也会经由代理服务器传回用户客户端。这也正是大多数用户接触最多的代理类型。
正向代理有什么意义?
访问受地理位置限制的网络:使用代理后,用户可以有针对性的访问不同国家/地区的各种内容。
访问匿名:使用代理后会隐藏真实的IP地址,这就是为什么使用正向代理服务器可以保证更高级别的匿名性和安全性。
网页抓取:代理最常见的用法是网页抓取。网页抓取有助于公司在市场上保持竞争力。
什么是反向代理?
反向代理主要的代理对象是服务器服务端,为服务器在其适当的位置设置了代理,以充当真实的服务器,主要用于解决服务端的资源利用问题和服务器稳定性问题。
反向代理主要是指通过代理服务器来接受访问请求,再由代理服务器转发到内部网络上的服务器,在得到响应的数据后再由代理服务器转发给用户客户端,像常见的在线客服就是反向代理的一种运用。
反向代理有什么意义?
缓存:反向代理能够缓存通常请求的数据。存储大量图片和视频的企业可以通过缓存这些内容并减少互联网服务器的负载来加快其网站的性能。
匿名性和安全性:由于反向代理会拦截所有传入请求,因此它们可以为后端服务器提供额外的保护。它通过阻止来自特定IP地址的可疑流量来帮助防止任何恶意行为者滥用Web服务器。
负载均衡:经常访问的网站有时候可能需要反向代理服务器来处理传入流量。一个受欢迎的站点可能会在多个后端服务器之间分配流量,而不是自己处理它,从而提高它处理许多请求的能力。如果其中一台服务器过载且出现故障,则可以将流量重定向到其他在线服务器,以保持网页运行。网站工程师甚至可以为这个负载均衡器添加更多的后端服务器,以增加容量并满足不断增长的性能需求。