HTTP反向代理的理解

作者:IPIDEA

2021-02-08 17:18:48

如果把局域网外的互联网看作一个巨大的资源库,局域网内的用户必须通过代理服务器访问这个资源库中的资源。另一方面,如果局域网向互联网提供资源,也可以设置为代理服务器,供互联网上的用户访问局域网中的资源,这与常用的代理服务器的方向正好相反,所以称为反向代理。

 

包括反向代理,反向代理可分为三种类型:

 

1.标准代理缓冲服务器。

此方法需要在浏览器配置中指明代理服务器的IP地址和端口号。每次浏览器向代理服务器发送请求进行处理。代理服务器可以有缓存的功能:它根据请求决定是否连接到远程web服务器获取数据。如果本地缓冲区中有目标文件,它可以直接将缓存的数据发送给用户。如果没有,它可以先检索文件,在本地保存一个缓冲区,然后将文件发送到客户端浏览器。

 

2.透明代理缓冲服务器。

透明代理缓冲服务与标准代理服务器具有完全相同的功能。然而,代理操作对于客户端的浏览器是透明的(即,不需要指定代理服务器的IP和端口)。透明代理服务器防止账号关联网络通信,并过滤掉访问外部的HTTP(端口80)流量。如果客户端的请求缓存在本地,缓存的数据会直接发送给用户;如果本地没有缓冲区,请求将被发送到远程web服务器,其他操作与标准代理服务器完全相同。对于Linux操作系统,透明代理使用Iptables或Ipchains实现。透明代理对于互联网服务器提供商尤其有用,因为不需要设置任何浏览器,透明代理并不适合于业务要求高的工作上,一般高匿代理比如IPIDEA全球代理比较适合。

 

3.反向代理缓冲服务器。

反向代理是一种完全不同于前两种代理的代理服务。可以降低原WEB服务器的负载。反向代理服务器承担对原WEB服务器静态页面的请求,防止原服务器过载。它位于本地网络服务器和互联网之间,处理对网络服务器的所有请求,并组织网络服务器和互联网之间的直接通信。如果互联网用户请求的页面缓存在代理服务器上,代理服务器直接将缓存的内容发送给用户。如果没有缓冲区,向WEB服务器发送请求,检索数据,在本地缓存,然后发送给用户。该方法通过减少对网络服务器的请求数量来减少网络服务器的负载。


 1.155.png


反向代理有两个目的:

一种是为多个网站的web服务器提供代理,其域名都指向反向代理服务器,对这些网站的所有请求都发送给反向代理服务器,反向代理服务器将HTTP请求转发给对应网站的Web服务器。

 

一种是为网站的web服务器集群提供一个代理,反向代理作为负载平衡器来决定哪个Web服务器接收请求。

 

反向代理始终位于网络服务器的前端。用户与互联网上Web服务器的连接首先要通过反向代理,然后反向代理决定哪个Web服务器来处理用户的请求,并将请求路由到相应的Web服务器。静态内容可以缓存在反向代理上,因此不需要路由到网络服务器。

除了缓存和负载平衡,反向代理还可以提供以下功能:

 

安全性:反向代理将用户与Web服务器隔离,使用户难以攻击特定的服务器;

 

数据加密/SSL加速:部分Web服务器可能不具备SSL加密功能,但具备加密功能的反向代理服务器可以为Web服务器提供数据加密,配备SSL加速硬件的反向代理服务器也可以为Web应用提供高速加密通道;

 

压缩:代理服务器可以压缩传输的数据以节省带宽。


*ipidea提供的服务必须在境外网络环境下使用

热门资讯