简介反向代理

相信很多小伙伴学习nginx的时候,很多都提到了反向代理,到底什么是反向代理,网上说的云里雾里看不懂。接下来我尽量用通俗易懂的文字来解释反向代理到底是什么?

“反向代理”和“正向代理”其实是相对的。但不管哪个,我们首先要明确,他们都只是一个代理(软件、工具)而已,他们最终都是为了客户端和服务端服务的。

我们先说正向代理,正向代理是指当你想访问一个网站时,你的请求是先经过一个代理服务器,再由代理服务器去访问目标网站,然后把结果返回给你。这个代理服务器就像是你专门雇了个“代办人”去帮你访问网站。你对目标网站是“隐身”的,网站只知道请求是从代理服务器发来的。

“反向代理”则反过来了,是站在服务器这一边的。客户端直接发出请求,反向代理服务器接收到这个请求后,再把它转发给实际的服务器,然后把结果返回给客户端。服务器对客户端来说是“隐身”的,客户端只知道和反向代理服务器打交道,而不知道真正处理请求的服务器在哪。

简单来说:

  • 正向代理:为客户端服务,帮助客户端访问目标服务器。
  • 反向代理:为服务器服务,帮助服务器处理客户端请求。

叫“反向代理”就是因为它站在服务器那一边,相对于客户端来说,方向反了,所以叫“反向代理”。

正向代理和反向代理都是让代理服务器去访问服务器,但它们的工作对象和目的不同。

再举个例子,可以仔细理解:

假设参考目标(固定变量)是你(客户端),你要访问一个网站,访问不了,所以你主动设置了一个代理服务器(或者你买了一个?),这个代理是为你服务的,你主动拥有了这个代理,但是你要访问的网站并不知道,这就是正向代理。

还是以你的视角,有一堆服务器,你要访问他们,但是服务器的运维(或管理员)人员因为一些原因,负载均衡也好、缓存请求也好,总之他们在服务器之前设置了一个代理来处理这些事,你所有的请求都经过这个代理服务器进行后续的请求,请求结果再通过代理返回给你。重点是在这个过程中,你没有参与任何设置,你并不知道还有这么一个代理。都是服务器端的人员设置的,这个代理就是反向代理,是服务器运维设置的给服务器服务的。

还有一个简单粗暴的解释:正向代理是“帮着你对付服务器”的;反向代理是“帮着服务器对付你”的!最重要的是一定要清楚他们的目的是什么,即他们有什么用!

可以同时参考反向代理作用理解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值