我们使用联盟链接。它们让我们能够维持运营,而您无需承担任何费用。

简单明了:什么是反向代理服务器?

我们解释什么是反向代理以及它与正向代理的区别。

正向代理与反向代理

逆转 代理 帮助企业优化资源、平衡负载并提高网络安全。本文将教您更多了解它们是什么以及它们与正向代理的比较。

什么是反向代理?

反向代理根据在线服务提供商的请求进行操作,因此它与直接从用户那里获取请求的正向代理相反。这是解释它的简单方法。在这种情况下,用户将反向代理服务器视为其最终目的地。客户端不会向您隐藏其 IP,而是您作为服务提供商向客户端隐藏后端服务器。

考虑客户端使用正向代理服务器的情况 想象一下客户端使用正向代理服务器(通常与代理关联的类型)而在线服务提供商使用反向代理服务器的情况。这种情况的结果是双方互相隐藏的交流 - 基本上,两个代理服务器刚刚进行了对话。

为什么要使用反向代理?

隐藏后端服务器并不是使用反向代理的唯一原因。以下是我在网上进行常规寻宝时收集的其他用例列表:
  • 安全性 – 您的用户看不到后端服务器的信息,这大大提高了安全级别。想要利用您基础设施中可能存在的任何薄弱环节的用户将无法这样做。大多数反向代理甚至具有帮助保护后端服务器免受攻击的功能 DDoS 攻击 通过限制来自一个 IP 的连接数量或将 IP 列入黑名单(拒绝)。
  • Web 加速 – 反向代理可用于在服务器响应返回客户端之前对其进行压缩,从而减少所需的带宽量。它还可用于缓存,当反向代理存储后端服务器响应的副本时,如果用户再次发出相同的请求,反向代理将提供已保存的响应。反向代理还可以进行 SSL (TLS) 加密和解密,从而释放后端服务器的资源。这些都是减少加载时间的好方法。
  • 负载均衡 – 我想说,这是一个大问题。反向代理服务器还可以为所有大型网站提供负载平衡解决方案 – 它们可以在多台服务器之间分配所有传入流量。此方法通过均匀分配请求处理来防止网站或其中一台服务器过载。因此,即使一台服务器无法完成其工作,其他服务器也会提供帮助。
  • 全局服务器负载均衡 – 在这种情况下,反向代理所做的工作与普通的负载平衡相同,但现在有了位置!反向代理可以将用户的请求分发到离他们最近的服务器。例如,如果华沙的人正在连接到位于旧金山的网站,那么他可能会被重定向到波兰某处的服务器。这种负载平衡通过减少请求必须传输的物理距离来缩短加载时间。很有帮助!

反向代理是负载均衡器吗?

既是也不是。根据我研究期间收集到的信息,即使您只有一台服务器,也可以而且应该使用反向代理。它提供安全性,还可以充当您网站的公开面(您的后端服务器对用户不可见)。只有当您有多台服务器时,将其用作负载平衡器才有意义。但话又说回来,如果您有多台服务器,反向代理可以在它们之间分配流量。

本质上,反向代理将进行负载平衡,大多数负载平衡器也将充当反向代理(仅 DNS 负载平衡器除外)。如果您想进一步了解这两个概念之间的区别,您还可以花一些时间阅读 也在读这个.

结语

系统管理员通常使用反向代理来解决服务器过载问题,即使用负载平衡方法,从而使网站可靠地供用户使用。负载平衡有助于在多台服务器之间分配流量,从而减少任何一台服务器的负载。

反向代理还可以充当网站的技术“公众面孔”——用户和后端基础设施之间的额外层,提供各种好处。

Nginx 的简单术语是“反向代理接受来自客户端的请求,将其转发到可以满足该请求的服务器,并将服务器的响应返回给客户端(这意味着反向代理后面的服务器可以与协议的不同特性或不同的协议进行通信)。”

代理服务器作为房屋

关于反向代理的常见问题

它捕获到达服务器的所有连接请求,然后根据预定义的规则采取行动。例如,如果网站是静态的,它可以提供网站的缓存版本以节省带宽。

您可能希望平衡服务器负载以防止其崩溃。或者您可能希望节省带宽。或者您的工作场所的政策禁止访问某些网站,而您想控制对这些网站的请求。

当然。Cloudflare 等 CDN 服务基本上是反向代理,因为它们会拦截并路由您的连接请求。

Chris Becker 的照片
克里斯·贝克尔
代理审阅者和测试者。