一尘不染

代理服务器和反向代理服务器有什么区别?

javascript

代理服务器和反向代理服务器有什么区别?


阅读 161

收藏
2022-02-15

共1个答案

一尘不染

首先,“代理”一词描述了代表他人行事的某人或某事。

在计算机领域,我们谈论的是一个服务器代表另一台计算机。

出于可访问性的目的,我将把我的讨论限制在网络代理上——但是,代理的想法并不局限于网站。

转发代理

大多数关于 Web 代理的讨论都是指称为“转发代理”的代理类型。

在这种情况下,代理事件是“转发代理”代表原始请求者从另一个网站检索数据。

3 台计算机的故事(上)

例如,我将列出三台连接到 Internet 的计算机。

通常,一个人会直接从X --> Z.

但是,在某些场景下,最好是Y --> Z代表X,其中链如下:X --> Y --> Z.

X 想要使用转发代理服务器的原因:

这是转发代理服务器的(非常)部分用途列表:

  • \1) X 无法直接访问 Z,因为
  • a) 对X互联网连接具有管理权限的人已决定阻止对站点的所有访问Z
    • 例子:
    • Storm Worm 病毒是通过诱骗人们访问来传播的familypostcards2008.com,因此系统管理员已经阻止了对该站点的访问,以防止用户无意中感染自己。
    • 一家大公司的员工在 .NET 上浪费了太多时间facebook.com,因此管理层希望在工作时间阻止访问。
    • 当地一所小学不允许互联网访问该playboy.com网站。
    • 政府无法控制新闻的发布,因此它通过封锁诸如wikipedia.org. 请参阅TORFreeNet
  • b) 的管理员Z已阻止X
    • 例子:
    • Z 的管理员注意到来自 X 的黑客企图,因此管理员决定阻止 X 的 IP 地址(和/或网络范围)。
    • Z是一个论坛网站。 X正在向论坛发送垃圾邮件。Z 阻挡 X。

反向代理

3 台计算机的故事(第二部分)

对于这个例子,我将列出三台连接到互联网的计算机。

通常,一个人会直接从X --> Z.

但是,在某些情况下,最好由管理员Z限制或禁止直接访问并强制访问者先通过 Y。因此,和以前一样,我们Y --> Z代表检索数据X,其链接如下X --> Y --> Z

这次与“转发代理”不同的是,这次用户X不知道他正在访问Z,因为用户X只看到他正在与 通信Y。服务器Z对客户端不可见,只有反向代理Y在外部可见。反向代理不需要在客户端进行(代理)配置。

客户X认为他只是在与Y( X --> Y) 通信,但实际情况是Y转发所有通信 (X --> Y --> Z再次)。

Z 想要设置反向代理服务器的原因:

  • \1) Z 想要强制其网站的所有流量首先通过 Y。
  • a) Z 有一个数百万人想查看的大型网站,但单个 Web 服务器无法处理所有流量。因此,Z 设置了许多服务器,并在互联网上放置了一个反向代理,当用户尝试访问 Z 时,它将把用户发送到离他们最近的服务器。这是内容分发网络 (CDN) 概念工作原理的一部分。
  • 2)Z的管理员担心托管在服务器上的内容遭到报复,不想将主服务器直接暴露给公众。
  • a) “Canadian Pharmacy”等垃圾邮件品牌的所有者似乎拥有数千台服务器,而实际上大多数网站托管在少得多的服务器上。此外,关于垃圾邮件的滥用投诉只会关闭公共服务器,而不是主服务器。

在以上场景中,Z都有选择的能力Y

2022-02-15