应用程序请求路由 (ARR) - 单服务器反向代理设置

应用程序请求路由 (ARR) - 单服务器反向代理设置

我有一台 Web 服务器,上面运行着两个 .NET 应用。它们在服务器上的设置是 app1.mydomain.com 和 app2.mydomain.com。

我希望能够接收任何发送到 app1.mydomain.com/subfolder 的请求,并使用 ARR 将其重写为 app2.mydomain.com/subfolder。

我在让它在单个服务器上运行方面遇到了困难,并且网络上的所有 ARR 示例似乎都意味着我需要在两个 Web 服务器前面设置另一台专用于 ARR 的服务器。

我尝试在一台 Web 服务器上执行的操作是否可行?如果可以,该如何做?

答案1

我认为您需要隐藏这两个站点。

使 ARR(默认网站)成为唯一监听端口 80 的网站。使其他两个网站只监听不同端口(例如 81 和 82)上的环回(127.0.0.1)。然后,您可以在 ARR 上创建规则以转发到 app2(例如,在 ARR 中创建 2 个服务器场,每个服务器场中有一台服务器)。

答案2

您不需要在这里使用 ARR——只需设置一个 URL 重写即可将请求重定向到正确的应用程序。

如果您不想查看 ARR 的反向代理端,而不是请求路由,则需要全局启用该功能,然后您可以:

  • 在 app1.mydomain.com/subfolder 添加虚拟站点
  • 添加 Url Rewrite 反向代理规则以命中 app2.mydomain.com/subfolder

请注意,反向代理不能与 Windows 身份验证混合。

相关内容