Regex IIS URL重写规则-查询字符串问题
我在web.config文件中配置了以下URL重写规则:Regex IIS URL重写规则-查询字符串问题,regex,iis,url-rewriting,asp-classic,web-config,Regex,Iis,Url Rewriting,Asp Classic,Web Config,我在web.config文件中配置了以下URL重写规则: <rule name="Test Rule" stopProcessing="true"> <match url="^$" /> <conditions> <add input="{QUERY_STRING}" pattern=".*item=1|all|none|first.*" /> </conditions> <action type="Rew
<rule name="Test Rule" stopProcessing="true">
<match url="^$" />
<conditions>
<add input="{QUERY_STRING}" pattern=".*item=1|all|none|first.*" />
</conditions>
<action type="Rewrite" url="/newsite/test.asp?{C:0}" />
</rule>
但是,查询字符串参数“item”在重写的URL中重复,即生成的查询字符串为“item=1&item=1”。我不知道为什么要复制它。有什么想法吗
谢谢您是否尝试将
appendQueryString=“false”
添加到操作属性?像这样:
<rule name="Test Rule" stopProcessing="true">
<match url="^$" />
<conditions>
<add input="{QUERY_STRING}" pattern=".*item=1|all|none|first.*" />
</conditions>
<action type="Rewrite" url="/newsite/test.asp?{C:0}" appendQueryString="false" />
</rule>
<rule name="Test Rule" stopProcessing="true">
<match url="^$" />
<conditions>
<add input="{QUERY_STRING}" pattern=".*item=1|all|none|first.*" />
</conditions>
<action type="Rewrite" url="/newsite/test.asp?{C:0}" appendQueryString="false" />
</rule>