谈一谈正向代理和反向代理

前言
    小编在公司的技术分享中屡次听到正向代理和反向代理,对于Ngnix这一实现反向代理的服务器,是如何工做的呢?下面我们就一块儿了解一下。nginx

正文
什么是代理服务器(Proxy Serve)?
    提供代理服务的电脑系统或其它类型的网络终端,代替网络用户去取得网络信息。浏览器

为何使用代理服务器?
提升访问速度
    因为目标主机返回的数据会存放在代理服务器的硬盘中,所以下一次客户再访问相同的站点数据时,会直接从代理服务器的硬盘中读取,起到了缓存的做用,尤为对于热门网站能明显提升访问速度。缓存

防火墙做用
    因为全部的客户机请求都必须经过代理服务器访问远程站点,所以能够在代理服务器上设限,过滤掉某些不安全信息。同时正向代理中上网者能够隐藏本身的IP,免受攻击。安全

突破访问限制
    互联网上有许多开发的代理服务器,客户机在访问受限时,可经过不受限的代理服务器访问目标站点,通俗说,咱们使用的FQ浏览器就是利用了代理服务器,能够直接访问外网。服务器

正向代理
     正向代理(forward proxy) ,一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并制定目标(原始服务器),而后代理向原始服务器转发请求并将得到的内容返回给客户端,客户端才能使用正向代理。咱们平时说的代理就是指正向代理。
    简单一点:A向C借钱,因为一些状况不能直接向C借钱,因而A想了一个办法,他让B去向C借钱,这样B就代替A向C借钱,A就获得了C的钱,C并不知道A的存在,B就充当了A的代理人的角色。 网络


反向代理
    反向代理(Reverse Proxy),以代理服务器来接受internet上的链接请求,而后将请求转发给内部网络上的服务器,并将从服务器上获得的结果返回给internet上请求的客户端,此时代理服务器对外表现为一个反向代理服务器。
    理解起来有些抽象,能够这么说:A向B借钱,B没有拿本身的钱,而是悄悄地向C借钱,拿到钱以后再交给A,A觉得是B的钱,他并不知道C的存在。 负载均衡


正向代理和反向代理的区别
位置不一样
正向代理,架设在客户机和目标主机之间;
反向代理,架设在服务器端;
代理对象不一样
正向代理,代理客户端,服务端不知道实际发起请求的客户端;
反向代理,代理服务端,客户端不知道实际提供服务的服务端;

备注:正向代理–HTTP代理为多我的提供FQ服务;反向代理–百度外卖为多个商户提供平台给某个用户提供外卖服务。
用途不一样
正向代理,为在防火墙内的局域网客户端提供访问Internet的途径;
反向代理,将防火墙后面的服务器提供给Internet访问;
安全性不一样
正向代理容许客户端经过它访问任意网站而且隐藏客户端自身,所以必须采起安全措施以确保仅为受权的客户端提供服务;
反向代理都对外都是透明的,访问者并不知道本身访问的是哪个代理。
正向代理的应用
    1. 访问原来没法访问的资源
    2. 用做缓存,加速访问速度
    3. 对客户端访问受权,上网进行认证
    4. 代理能够记录用户访问记录(上网行为管理),对外隐藏用户信息网站

反向代理的应用
    1. 保护内网安全
    2. 负载均衡
    3. 缓存,减小服务器的压力
       Nginx做为最近较火的反向代理服务器,安装在目的主机端,主要用于转发客户机请求,后台有多个http服务器提供服务,nginx的功能就是把请求转发给后台的服务器,决定哪台目标主机来处理当前请求。.net

总结
    正向代理是从客户端的角度出发,服务于特定用户(好比说一个局域网内的客户)以访问非特定的服务;反向代理正好与此相反,从服务端的角度出发,服务于非特定用户(一般是全部用户),已访问特定的服务。
---------------------
做者:大白快跑8
来源:CSDN
原文:https://blog.csdn.net/zt15732625878/article/details/78941268
版权声明:本文为博主原创文章,转载请附上博文连接!代理

相关文章
相关标签/搜索