一文彻底搞懂正向代理和反向代理

news/2024/7/8 12:59:32

前言

多长时间不写博客了?反正一双手是数不过来了,今天就顺手写点小知识点。主要想说的是正向代理和反向代理。

正文

代理

首先先说概念:
代理的概念是什么呢?
百度百科提供的说明:
代理服务器(Proxy Server)是一种重要的服务器安全功能,它的工作主要在开放系统互联(OSI)模型的会话层,从而起到防火墙的作用。代理服务器大多被用来连接INTERNET(国际互联网)和INTRANET(局域网)。

简单说就是“中间商”如下图(本文以Nginx为例进行说明):
在这里插入图片描述
图中的Nginx服务器可以看成是代理服务器,通俗的讲就是客户端要想访问原始服务器(目标服务器)必须通过代理服务器去访问。客户端和服务器之间是互相不认识的。大家注意是互相两个字,列举两种情况:
1、客户端认识服务器,但是服务器不认识客户端。
2、客户端不认识服务器,但是服务器认识客户端。
所以两个互相不认识的人(这里说的是客户端和原始服务器)可以通过中间的代理来互相交流。这就是代理的主要作用。

正向代理

百度百科:
正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。
通过上边对代理的叙述,正向代理可以看做是两种互相不认识情况的第一种“客户端认识服务器,但是服务器不认识客户端。
在这里插入图片描述
红框中的客户端和代理服务器是认识的,也就是客户端非常清楚是向代理服务器发送的请求,而非是向原始服务器发送的请求。

反向代理

百度百科:
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。

有正向代理也有反向代理,反向代理正好符合两种互相不认识情况的第二种“客户端认识服务器,但是服务器不认识客户端。
在这里插入图片描述
概念性的东西就这些了还有一些个人的理解

总结

个人理解:
正向代理是客户端代理,主要是代理客户端,
反向代理是服务端代理,主要是代理服务端。
共同点都是“代理”的 客户端和服务端都是互相不认识的,这才有了代理的必要性。
从始至终的角度都是站在客户端的角度来说的

正向代理和反向代理之间关系的不通说法:

第一种:
正向代理客户端知道服务器是代理,
反向代理客户端不知道服务器是代理。

第二种:
正向代理是对原始服务器隐藏客户端信息,
反向代理是对客户端隐藏原始服务器信息

第三种:
正向代理是原始服务器不知道具体的客户端,
反向代理是客户端不知道具体的原始服务器


http://www.niftyadmin.cn/n/1974369.html

相关文章

2014-11-6Android学习------在手机上用鼠标绘图的处理---贝塞尔曲线(一)

写一篇文章很辛苦啊!!! 转载请注明,联系请邮件nlp30508qq.com 我学习Android都是结合源代码去学习,这样比较直观,非常清楚的看清效果,觉得很好,今天的学习源码是网上找的源码 百度搜…

JPA数据操作汇总,常用的数据操作方法都在这了

前言 写博客总结,最近公司进新人,写了个内部文档顺便整理了一下jap的数据操作demo 正文 第一种方式: 根据客户名称查询客户,使用jpql的形式查询,配置jpql语句,使用的Query注解 Query(value"from …

nginx将svn请求转发到apache实现svn http请求

需要安装apache libapache2-svn模块,nginx,svn。安装过程略过。 记录比较重要几点(不按先后): 安装apache的svn模块 sudo apt-get install libapache2-svn apahce的svn模块,通过他实现svn权限等问题。 apt-get …

树形结构的遍历过程全遍历

前言 树形结构是项目开发中常常用到的一种结构,也是一种经典的数据结构,比如说常见的二叉树,红黑树等,今天要说的不是基础的数据结构,是业务中用到的树形数据结构。 正文 先来看看业务是什么吧! 业务 如…

2014-11-6Android学习------Android图像处理之Bitmap类

Bitmap是Android系统中的图像处理的最重要类之一。用它可以获取图像文件信息,进行图像剪切、旋转、缩放等操作,并可以指定格式保存图像文件。本文从应用的角度,着重介绍怎么用Bitmap来实现这些功能。 一、Bitmap的生成 1.1 BitmapFactory dec…

Android如何绘制视图,解释了为何onMeasure有时要调用多次

2019独角兽企业重金招聘Python工程师标准>>> 原文地址:How Android Draws Views 当Activity获取焦点的时候,它就需要绘制布局。Android框架会处理绘制过程,但这个Activity必须提供它布局树的根节点。 绘制过程是从布局的根节点开始…

安利一个画图的网站

前言 大家画流程图,架构图都用什么呢?之前画图用的不同的软件安装到电脑上,比如微软的Visio 画甘特图各种图也都能画,但是不免费不香。然后有用了ProcessOn这个也是挺好用的,就是免费的图有点少,后来通过多…

2014-11-6Android学习------Android Paint和Color类、Canvas类的常用属性

要绘图,首先得调整画笔,待画笔调整好之后,再将图像绘制到画布上,这样才可以显示在手机屏幕上。 graphics中包括了Canvas(画布)、Paint(画笔)、Color(颜色)、B…