web中间件应用系列:正向代理和反向代理的区别

本系列文章是把作者学习web中间件时候的实操记录分享出来,内容主要包括web中间件入门的一些理论概念知识、场景应用、程序部署,希望能够帮到一些初学者,少走一些弯路。

正向代理和反向代理的区别

代理服务器#、#正向代理#、#反向代理#、#正向代理和反向代理区别#、#nginx代理#

1.概念

什么是代理,代理就是一个渠道。代理的过程涉及到3个角色,客户端(即用户)(client)、代理服务(proxy)、目标服务器(server),客户端经过代理最终访问目标服务器的资源。一般情况下在工作的生产环境中使用反向代理较多,个人上网使用正向代理较多。

2.反向代理

反向代理应用场景:
(1)服务器代理,保证目标服务器的安全,将反向代理服务作为公网访问地址,目标服务器是内网其他服务器。
(2)负载均衡,通过反向代理服务器实现负载和高可用。
(3)DNS服务,DNS可以映射1个或多个目标服务器。


在这里插入图片描述
特点:对客户端(用户)隐藏目标服务器。客户端只知道代理,不知道目标服务器,但通过代理客户端实际访问的是目标服务器,目标服务器知道客户端是谁。

3.正向代理

正向代理应用场景:
(1)网络代理,访问原来无法访问的网络资源,如Github、Google、某些网站等。
(2)局域网代理上网,如局域网中电脑A可以上网,电脑B不能上网,可以将A作为代理上网服务,开启网络共享,在B浏览器里配置上网代理,最终实现B也能上网。(PS:这种场景现在很少见,主要是方便大家理解代理,如很久之前家里有猫没有路由器的情况,只有一个电脑能拨号上网;第二种是单位电脑绑定MAC只有A能上网)
(3)可以做缓存,加速访问资源。
(4)网关代理,对客户端访问授权,上网进行认证。代理可以记录用户访问记录。


在这里插入图片描述
特点:对目标服务器隐藏客户端(用户)。客户端(用户)知道目标服务器(github),但是访问不到,可以通过代理(VPN)访问目标服务器,目标服务器只知道代理访问了自己,不知道客户端是谁。

4.总结

通俗来讲,正向代理是客户端的代理,反向代理是服务器的代理。正向代理的对象是客户端,反向代理的对象的服务端。

正向代理、反向代理适用于不同的应用场景,还可以同时存在,如,以下情景。


在这里插入图片描述

IT小胖豆:初学者踩坑之路及过程分享,希望能够帮到一些初学者,欢迎各位IT打工人,入坑讨论-_-

你可能感兴趣的:(web中间件应用系列:正向代理和反向代理的区别)