服务器代理|反向代理服务器的工作原理
反向代理是指代理服务器接受互联网上的连接请求,然后将请求转发给内部网络上的服务器。并将结果从服务器返回到请求在互联网上连接的客户端,此时代理服务器在外部世界中显示为服务器。
通常的代理服务器仅用于代理内部网络到互联网的连接请求。客户端必须指定一个代理服务器,并将最初直接发送到Web服务器的http请求发送到代理服务器。当代理服务器可以代理外部网络上的主机并访问内部网络时,这种代理服务称为反向代理服务。
反向代理服务器通常有两种模式,可以作为内容服务器的主体替身和内容服务器集群的负载平衡器。
1.成为内容服务器的主体
如果您的内容服务器包含必须保持安全的敏感信息,如信用卡号数据库,您可以在防火墙外设置一个代理服务器作为内容服务器的主体。当外部客户端试图访问内容服务器时,它将被发送到代理服务器。实际内容位于内容服务器上,内容服务器在防火墙内受到保护。代理服务器位于防火墙之外,在客户端看来就像一个内容服务器。
当客户端向站点发出请求时,请求将被传送到代理服务器。然后,代理服务器通过防火墙中的特定通道将客户端的请求发送到内容服务器。然后,内容服务器通过该通道将结果传输回代理服务器。代理服务器将检索到的信息发送给客户机,就好像代理服务器是实际的内容服务器一样(参见图2)。如果内容服务器返回错误消息,代理服务器会截获该消息,并在将消息发送给客户端之前更改报头中列出的任何URL。这将阻止外部客户端获取内部内容服务器的重定向网址。
这样,代理服务器在安全数据库和可能的恶意攻击之间提供了另一个屏障。与拥有整个数据库访问权限的情况相比,即使攻击侥幸成功,攻击者最多也仅限于询问单个事务中涉及的信息。未经授权的用户无法访问真正的内容服务器,因为防火墙通道只允许代理服务器访问。
2.作为内容服务器的负载平衡器
您可以在一个组织中使用多个代理服务器来平衡网络服务器之间的网络负载。在该模型中,可以通过使用代理服务器的缓存特性来创建用于负载平衡的服务器池。此时,代理服务器可以位于防火墙的两侧。如果Web服务器每天接收大量请求,可以使用代理服务器来分担Web服务器的负载,提高网络访问的效率。
代理服务器充当由客户端发送到真实服务器的请求的中间中介。代理服务器将请求的文档存储在缓存中。如果有多个代理服务器,DNS可以通过“循环复用”的方式选择自己的IP地址,为请求随机选择路由。客户端每次都使用相同的URL,但是请求采用的路由每次都可能经过不同的代理服务器。
可以使用多个代理服务器来处理对大容量内容服务器的请求,这具有内容服务器可以处理更高负载并且比单独工作时更高效的优点。在初始启动期间,代理服务器第一次从内容服务器检索文档,然后对内容服务器的请求数量将大大减少。有不懂的请咨询梦飞服务器了解。