Nginx (三)——正向代理与反向代理
发布日期:2021-05-07 10:03:37 浏览次数:28 分类:精选文章

本文共 1050 字,大约阅读时间需要 3 分钟。

要理解负载均衡,必须先搞清楚正向代理和反向代理。

1、正向代理

正向代理类似一个跳板机,代理访问外部资源。

在这里插入图片描述
举个例子:

我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。从网站的角度,只在代理服务器来取内容的时候有一次记录,有时候并不知道是用户的请求,也隐藏了用户的资料,这取决于代理告不告诉网站。

客户端必须设置正向代理服务器,当然前提是要知道正向代理服务器的IP地址,还有代理程序的端口。

再举一个形象的例子:

在这里插入图片描述

总结来说: 正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。

正向代理的用途:

1、访问原来无法访问的资源,如google

2、可以做缓存,加速访问资源
3、对客户端访问授权,上网进行认证
4、代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息

例如CCProxy用途:

在这里插入图片描述

2、反向代理

初次接触反向代理的感觉是,客户端是无感知代理的存在的,反向代理对外都是透明的,访问者者并不知道自己访问的是一个代理。因为客户端不需要任何配置就可以访问。

反向代理(Reverse Proxy)实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

反向代理的作用:

(1)保证内网的安全,可以使用反向代理提供WAF功能,阻止web攻击。

大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。

在这里插入图片描述
(2)负载均衡,通过反向代理服务器来优化网站的负载
在这里插入图片描述
在举一个例子:
在这里插入图片描述
在这个过程中,10086 这个号码相当于是一个代理,真正提供服务的,是话务员,但是对于客户来说,他不关心到底是哪一个话务员提供的服务,他只需要记得 10086 这个号码就行了。

所有的请求打到 10086 上,再由 10086 将请求转发给某一个话务员去处理。因此,在这里,10086 就相当于是一个代理,只不过它代理的是话务员而不是客户端,这种代理称之为反向代理。

3、二者区别

借用知乎两张图来表达:

在这里插入图片描述
在这里插入图片描述

上一篇:Nginx (四)——实现负载均衡
下一篇:Linux启动Nginx后访问虚拟机的ip时会出现链接不上的问题

发表评论

最新留言

不错!
[***.144.177.141]2025年04月19日 00时20分27秒