【问题标题】:IIS Reverse proxy configuration for multiple servers多台服务器的 IIS 反向代理配置
【发布时间】:2015-11-18 15:46:29
【问题描述】:

我是这个 IIS 配置的新手,所以我的要求是根据 URL 的内容执行反向代理,下面是关于我要实现的目标的简要说明,

我们有 3 个服务器,

  1. 公共服务器:public.abc.com
  2. Intranet Web 服务器:WebServer.xyz.com
  3. 内网 API 服务器:APIServer.def.com

因此,每当请求到达 公共服务器(即 public.abc.com)并且请求类似于“public.abc.com/?1257#/test”时,它应该被定向到Intranet Web 服务器(即 WebServer.xyz.com)以及查询字符串部分

而如果对 公共服务器 的请求类似于“public.abc.com/api/valid”,那么该请求应该被定向到 Intranet API 服务器(即APIServer.def.com) 以及“/api/valid”部分,

我尝试在 IIS 8.5 中使用 ARR 和 URL 重写来配置它,方法是将 2 个不同的规则与 patterns 编写为“(.)\?(.)”和“ (.)(api)(.)" 分别用于 Web 服务器和 API 服务器,

但似乎只有在禁用任何一个规则并且它正在完美地完成预期时,配置才有效, 当这两个规则都启用时,重新路由失败并且我看到一个默认的 IIS 起始页,

我也尝试在 URL 重写中使用条件,但它不起作用

请帮我解决这个问题,

感谢和问候, 乙

【问题讨论】:

    标签: url-rewriting cross-domain reverse-proxy iis-8.5 arr


    【解决方案1】:

    对于 WebServer.xyz.com,您应该配置规则条件,以便将除 /api/valid/(.*) 之外的所有 URL 应用到它 (RegEx)。

    对于 APIServer.def.com 应该有规则条件只匹配 /api/valid/(.*)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-29
      • 2013-04-23
      • 1970-01-01
      • 2011-12-20
      • 2019-07-15
      • 2017-03-16
      • 1970-01-01
      相关资源
      最近更新 更多