IIS URL 重写模块 - 更改形成多个查询字符串的查询字符串参数值
IIS URL Rewrite Module - Change Querystring Parameter Value forming multiple query string
<rule name="replace query string" enabled="true" stopProcessing="true">
<match url="(.*)(ip=1)(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{QUERY_STRING}" pattern="(.*)(ip=1)(.*)" />
</conditions>
<action type="Redirect" url="{R:0}?{C:0}ip=0{C:2}" appendQueryString="false" logRewrittenUrl="true" />
</rule>
我已经使用了上述规则并创建了重复的查询字符串
下面我用过url
http://test.com/track/?ip=1&_=1589821794782
我的主要目标是将 test.com 更新为 api.com,然后将 ip=1 更改为 ip=0。
你能帮帮我吗?我是新手?
您的规则模式存在一些问题。您可以看到您的规则的以下失败请求跟踪结果:
为了完成您的退休生活,您可以尝试使用以下规则:
<rule name="replace query string" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="test.com" />
<add input="{QUERY_STRING}" pattern="ip=1(.*)" />
</conditions>
<action type="Redirect" url="http://api.com/{R:1}?ip=0{C:1}" appendQueryString="false" logRewrittenUrl="true" />
</rule>
<rule name="replace query string" enabled="true" stopProcessing="true">
<match url="(.*)(ip=1)(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{QUERY_STRING}" pattern="(.*)(ip=1)(.*)" />
</conditions>
<action type="Redirect" url="{R:0}?{C:0}ip=0{C:2}" appendQueryString="false" logRewrittenUrl="true" />
</rule>
我已经使用了上述规则并创建了重复的查询字符串
下面我用过url
http://test.com/track/?ip=1&_=1589821794782
我的主要目标是将 test.com 更新为 api.com,然后将 ip=1 更改为 ip=0。
你能帮帮我吗?我是新手?
您的规则模式存在一些问题。您可以看到您的规则的以下失败请求跟踪结果:
为了完成您的退休生活,您可以尝试使用以下规则:
<rule name="replace query string" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="test.com" />
<add input="{QUERY_STRING}" pattern="ip=1(.*)" />
</conditions>
<action type="Redirect" url="http://api.com/{R:1}?ip=0{C:1}" appendQueryString="false" logRewrittenUrl="true" />
</rule>