正向代理与反向代理之间的区别

发布于:2023-01-04 ⋅ 阅读:(274) ⋅ 点赞:(0)


前言

代理(Proxy)其实就是个中介,正向代理与反向代理都是对请求进行转发,但之间的区别还是很大的,现简单梳理下两者的区别。

一、正向代理

特点:客户端(Client)非常明确要访问的服务器(Server)地址。
在这里插入图片描述

通过正向代理(Proxy)的方式,客户端的HTTP请求可以转发到之前与客户端网络不通的其它不同的目标服务器。
比如:在国内访问谷歌,直接访问是访问不到的,这时通过正向代理服务器,将我们的请求发送给代理服务器,代理服务器去访问谷歌,获取数据之后再返回给我们,这样就能访问谷歌了。

二、反向代理

反向代理(Proxy)与正向代理相反,客户端(Client)不知道目标服务器(Server)的信息,代理服务器就像是原始的目标服务器,客户端不需要特别的设置。
在这里插入图片描述

客户端向反向代理服务器直接发送请求,接着反向代理服务器将请求转发给目标服务器,并将目标服务器的响应结果返回给客户端。

三、使用场景说明

  1. 正向代理主要是用场景是客户端。
    由于网络不通等原因,突破自身ip限制,通过访问中间转发环节即正向代理服务器进行访问目标服务器。
  2. 反向代理服务器主要使用场景是服务端。
    服务提供方通过反向代理服务器实现目标服务器的动态切换,进而实现目标服务器的负载均衡。

总结

正向代理是对客户端的伪装,服务器得到的是伪装过的客户端信息,proxy和client同属一个LAN,对server透明;
反向代理是对目标服务器的伪装,隐藏了目标服务器的IP、头部或者其他信息,客户端得到的是伪装过的目标服务器信息,proxy和server同属一个LAN,对client透明。