反向代理

如果您想了解有关反向代理的更多信息,请立即单击。本文是反向代理的终极指南,包含初学者需要了解的有关反向代理的所有信息。

许多Internet用户都知道正向代理服务器及其用途,但是对于反向代理,却知之甚少。这是因为没有多少人拥有服务器端知识,他们只了解客户端。

  • 反向代理与正向代理之间的差异

就像您有代理来为您提供隐私一样,服务器也要求它们提供自己的隐私-反向代理是服务器的代理。从本文中您将了解它们是什么,它们如何工作以及它们的用途。


什么是反向代理?

反向代理是充当Web服务器网关的代理服务器。当您将请求发送到使用反向代理的Web服务器时,他们将先转到反向代理,由该代理将确定是将其路由到Web服务器还是将其阻止。

这意味着有了反向代理,您永远不会与使用它的Web服务器进行直接通信。可以将它们看作web服务器或服务器集群的某种包装器。通过负载平衡和缓存,它们可以保护web免遭攻击,并提供更好的web性能。


反向代理如何工作

反向代理完全是服务器端工程师的工作。作为站点访问者,您与它无关。如果有现成的工具,除了利用它,你别无选择。这是因为根据它的结构位置,它充当服务器的网关,除了通过它们,没有请求能够到达使用它们的服务器。

就像您需要隐私一样,服务器也是如此。但是,除了可以防御攻击之外,有些还可以利用反向代理通过负载平衡和缓存来提高其Web性能。

对于使用这种类型代理的服务器或一组服务器,您将不知道关于实际服务器的任何信息。反向代理的IP地址将是您可以知道。当您使用它向web服务器发送请求时,您的请求将直接发送到这个反向代理服务器。

然后,代理决定如何处理该请求,是将其中继到适当的服务器还是发回禁止的错误响应。如果它授权您的请求,则它将保存您的请求副本(包括IP地址),并将您的请求中继到适当的服务器。

当响应被发送回时,它被发送到反向代理,反向代理将其转发给您。所有这些都是在短时间内发生的,您甚至都不会注意到。某些反向代理实际上可以缓存资源,这意味着,如果你正在寻找的信息已经在缓存中,它不必浪费资源,试图再次获取它,它会直接发送给你,而不打扰服务器。


反向代理服务器端技术

反向代理服务器为您的公司和网站提供了有用的技术,可以保护自己免受各种类型的连接的侵害,或用作过滤、防火墙或其他安全性,在这里,我将为您解释反向代理的3种必要应用程序。


  • 负载均衡

如果您一直在尝试在线研究反向代理,那么您很有可能遇到了负载平衡问题。有些人甚至认为它们是同一回事,而另一些人则认为反向代理所做的唯一工作就是充当负载平衡器。尽管不能说所有这些想法都是完全正确的,但它证实了以下事实:人们使用反向代理的最重要原因是负载平衡。

高流量的网站通常每分钟处理大量请求,这可能会减慢其系统性能并破坏响应时间。为了确保更好的用户体验和更快的响应,此类高流量网站使用了反向代理。

使用反向代理,它们将具有一组服务器,它们全部执行相同的功能。它没有使一台服务器响应所有请求,而是在服务器之间分配了请求,从而缩短了响应时间,并且不会使任何服务器工作过度。


  • 快取

一些反向代理可以充当缓存机。通常,如果您在一分钟内发送一千个请求相同资源的请求,请求将一遍又一遍地到达服务器,请求相同资源,从而浪费了资源和宝贵的时间。这是一种低效的处理方式。但是,在反向代理的帮助下,首次请求资源时,它将缓存(保存)该资源。

后续请求将不会中继到服务器-代理只会从其缓存中提取所需的资源,它们是保存静态文件副本的完美工具。


  • 安全

如上所述,如果请求使用反向代理,则请求不会直接到达Web服务器。它们有助于保护Web服务器免受已知漏洞的侵害。如果请求带有恶意意图,则代理会拦截该请求并将其阻止。

同样,非常重要的事实是,尝试直接攻击Web服务器变得更加困难。为了攻击服务器,您可能最终会攻击代理。但是,这并不是万无一失的情况,因为攻击仍可能到达服务器。


反向代理的用途

您还在寻找反向代理的用途吗?如果你是一个网站的所有者,当你没有其它选择,只有利用它,因为他们提供巨大的利益。下面是这种类型代理的重要用途:

  • 该公司可以隐藏其实际内部服务器结构的详细信息,从而使访问或破坏这些服务器变得更加困难。本质上是黑客保护。
  • 反向代理可以使用防火墙设置来帮助防御DDoS攻击该代理可以减轻DDoS的压力并通过合法的流量,而不会损害真实Web服务器的性能。当然,就像一扇人群挤过的门一样,它仍然可能是一个瓶颈,但并不是那种在失败时危及用户数据的瓶颈。
  • 反向代理可能配备有可加快SSL证书验证速度的硬件,从而使SSL连接更快且更不容易被利用。
  • 如果有几台内部Web服务器上有冗余数据,反向代理可以充当负载平衡器,确保每台内部服务器的压力都不大。当每台服务器的功能极小但它们共同构成强大的资源来源时,此功能特别有用。
  • 通过在请求相同时立即向多个客户端提供动态数据,可以将反向代理用作动态内容的缓存。此过程称为网络加速。
  • 反向代理可以处理 Web服务器的数据压缩,以提供更快的连接和较低的主Web服务器压力。
  • 访问地址必须保持不变时,反向代理用于统一网址。如果您有五个Web服务器,则通常每个服务器都有自己的IP地址。这将使静态脚本难以访问,因为它将被迫访问指定的IP,并且该服务器可能很忙。当然,有很多方法可以解决此问题,但是使用自己的IP地址并向打开的任何服务器发送请求的反向代理都是一个不错的选择。
  • 通过将流量以相等的方式路由到两个不同Web服务器上提供的内容,可以将反向代理用于拆分测试,而无需测试人员使用链接或基于脚本的标记在选项之间划分流量。

同样,所有这些仅是为了公司和网站操作系统的利益。向站点发送流量的客户不会获得匿名好处,也不会获得代理的任何其他好处。但是,他们可以使用代理而不破坏反向代理,反之亦然。它们完全兼容,因为它们担当了不同的角色。


结论

反向代理在请求和响应周期中很有用。它们不仅可以用于安全性,在高流量网站的情况下,它们还可以为最终用户提供响应速度更快的响应。它们通常是透明的,你甚至不知道它们的存在,因为有些隐藏了你可以用来知道它们存在的足迹。


有关,

  • 代理的定义:什么是代理服务器?
  • 区别:反向代理与。转发代理
  • 反向连接代理指南:反向连接代理如何工作?