【发布时间】:2017-08-20 08:59:00
【问题描述】:
我正在尝试在 UrlRewrite 中配置具有 2 个条件的规则:
- HTTP头
HTTP_HOST需要匹配某个域(api.contoso.com) - 自定义 HTTP 标头
x-app-version需要出现在 HTTP 请求中
基于此信息,我想在后端重定向到不同版本的 API。
问题
该规则在第一个条件下按预期运行。
当HTTP_HOST 与 api.contoso.com 匹配时,它就会启动。
但是,它忽略了我的自定义 x-app-version 标头。
假设
所以,我担心 UrlRewrite 条件只能与下拉列表中有限的一组预定义 HTTP 标头(HTTP_HOST、REMOTE_ADDRESS、REMOTE_HOST、...)结合起来定义。
问题 假设是正确的还是应该有可能? 在我的配置或其他方法中是否有错误以根据自定义定义的 HTTP 标头设置条件?
<rule name="ARR_test2" enabled="false">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="api.contoso.com" />
<add input="{x-app-version}" pattern="1" />
</conditions>
<action type="Rewrite" url="https://FARM_apiv1/{R:0}" />
</rule>
【问题讨论】:
标签: iis url-rewriting url-rewrite-module