- 2022-06-20
- 阅读()
- 来源:互联数据
一些从事技术开发或者外贸网站运营的站长一般会接触到代理服务器,一般的正向代理,比如翻墙,任何可以连接到该代理服务器的软件,就可以通过代理访问任何的其他服务器,然后把数据返回给客户端,这里代理服务器只对客户端负责。而反向代理的话,如果他反向代理了两个服务,那么之后客户端访问这两个服务器的时候,该代理服务器才会给它代理,也就是说,这里的反向代理和正向代理服务器只对该代理服务器所代理的服务器负责。这也就是为啥要起这样的名字。
反向代理和正向代理服务:http://www.hkt4.com/dedicated/hkcloud.html
一、正向代理:正向代理隐藏真实客户端
正向代理也是我们大家接触最多的场景。平时大家是不是有需求要去国外的某歌网站查论文资料,或者搜索程序bug解决方案。此时你会发现正常在浏览器中输入网址是无法访问的,原因大家是知道的,此时我们需要一个梯子进行访问。这种方式的过程其实是找到一台可以访问国外网站的代理服务器,我们在浏览器输入某歌网址,敲回车键,浏览器其实是把请求发送给代理服务器,代理服务器去访问国外的网站并将国外网站返回的数据再返回给你的浏览器,你就能看到国外网站了。
正向代理,就是一个位于客户端和原始服务器之前的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并且指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端,客户端才能使用正向代理。
比如:我们要去访问某个网站,我们直接访问不通,那么我们就可以找一个代理服务器为我们服务,我们通过代理服务器请求到这个网站。对于这个网站而言他只知道有一个服务器访问了自己,并不知道你访问了他。
再举一个简单的例子告诉你什么是正向代理:
假设A和B是同学,但平时并不是很熟,A向B借钱,被B拒绝了。此时A联系了C,C是A的好朋友,C和B也很熟。C向B借了钱并且给了A。此时A拿到了B的钱,但B并不知道他的钱借给了A。这时B同学扮演了一个非常关键的角色,就是代理,也可以说是正向代理,即就是隐藏了真实的客户端
正向代理的过程,隐藏了真实的客户端。客户端请求的服务都被代理服务器代替来请求。
二、反向代理:反向代理隐藏真实服务端
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。
反向代理方式是指以代理服务器来接收internet网上的连接请求,然后将请求转发给内部网络上的服务器,并从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个节点服务器。
反向代理服务器作用,企业里见到比较多是反向代理服务器,它主要有如下几种作用:
①、安全保护。隐藏真实服务器的地址信息,对互联网的请求做一个过滤。
②、为后端服务器减压:静态资源如html、css、js、图片文件等可以路由到本地缓存,而不是找真实服务器要。
③、负载均衡器。提供了分布式部署的强有力的支撑。轮询、最小连接数、随机、一致性哈希、智能负载等多种负载策略。
简单举例什么是反向代理:
我们平时访问百度时,直接访问谷歌。它背后可能有成千上万的服务器为我们服务,但具体是哪一台为我们服务,我们并不知道,也没必要知道。我们只需要知道反向代理服务器是谁就可以(只要达到目的就可以了)。谷歌就是我们的反向代理服务器,它会把我们的请求发送到真实的服务器那里去。即隐藏真实的服务端,Nginx就是性能非常好的反向代理服务器,用来做负载均衡。
常见的反向代理服务器分为软件反向代理和硬件反向代理。硬件如F5负载均衡器,价格那是相当的昂贵一台,稳定性和性能那也是杠杠的,一般都是一个有钱的金主才会用的,如一个大型国有企业,软件代理,常见的如nignx、haproxy,他们则对服务器硬件要求不高,且自身也是免费的,是很多中小型互联网企业的首选。
三、正向代理和反向代理两者的区别
两者的区别在于代理的对象不一样:正向代理代理的对象是客户端,反向代理代理的对象是服务端
正向代理中,proxy和client同属一个LAN,对server透明;
反向代理中,proxy和server同属一个LAN,对client透明。
实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以把后出现的那种代理方式叫成了反向代理。
- 上一篇:一篇文章告诉你:公网IP和私网IP的区别
- 下一篇:如何快速访问被屏蔽网站?