2

这个问题可能听起来很奇怪或措辞不当。我有一个 nginx Web 服务器X,它必须从其他服务器请求一些数据Z。可以有一个P我控制的代理,这样X可以Z通过P.

X --> P --> Z

问题:是否可以在andQ之间有另一个代理,给出:PZ

X --> P --> Q --> Z

选择的代理Q取决于idWeb 服务器X知道的参数(例如)?也许参数id可以在标头中从Xto传递P,如果可能的话,P可以id用来查询 MySQL 数据库以检索正确的代理详细信息Q并将其用作此特定连接的代理?如果这是可能且理想的,应该如何设置?

同样在这种情况下,被P认为Q是正向代理还是反向代理?

4

1 回答 1

1

是的,你可以这么做。许多网站一直都这样做。看看网络服务是如何工作的顺便说一句。

如果 P/Q 是反向代理通常比代理更好,因为反向代理不会修改请求并确保您可以在 X 和 Z 之间拥有任意数量的此类组件(包括没有)。所以当您在 X 上的应用程序时与 Z 一起工作,当它是反向代理时,它将自动与中间的 P 一起工作。这是开发应用程序时要考虑的一个非常重要的方面!

现在,根据用于 P 的产品,您将拥有或多或少的功能。例如,haproxy 将能够在标头、请求参数等中匹配您的 id……但它无法从数据库中查找它。我相当确定您会找到一些能够执行此类查找的产品(这样做是否有效是另一个问题)。

希望这会有所帮助!

于 2013-01-04T19:02:35.560 回答