Iis 7 使用多个查询字符串重写IIS URL
我在URL重写和尝试重写/重定向多个查询方面非常新,但似乎不起作用。由于这是搜索结果,并带有不同的筛选,因此查询可能会有所不同。例如,在一些搜索中,我们可以查询Iis 7 使用多个查询字符串重写IIS URL,iis-7,url-rewriting,url-rewrite-module,Iis 7,Url Rewriting,Url Rewrite Module,我在URL重写和尝试重写/重定向多个查询方面非常新,但似乎不起作用。由于这是搜索结果,并带有不同的筛选,因此查询可能会有所不同。例如,在一些搜索中,我们可以查询t1=something,在另一个搜索中,我们可以查询t2=somethingelse,有时我们可以将它们组合起来,例如:t1=something&t2=somethingelse 我将IIS7与web.config一起使用,以下是我迄今为止所做的: 这是我的示例链接 www.website.com/search/?t1=first&am
t1=something
,在另一个搜索中,我们可以查询t2=somethingelse
,有时我们可以将它们组合起来,例如:t1=something&t2=somethingelse
我将IIS7与web.config一起使用,以下是我迄今为止所做的:这是我的示例链接
www.website.com/search/?t1=first&t2=second
我已经尝试了以下方法,但没有一种真正起作用:(一)
(二)
我真的很感激任何帮助
谢谢。我想分享一下我发现的东西的链接- 此外,要分离多个参数,可以使用管道操作符。例如,类似这样的内容: parm1=(\w+);parm2=(\w+) 使用{C:1}和{C:2}应用目标URL 所以,像这样的URL: yourapp/list.aspx?parm1=abc&parm2=123
将导致如下的反向引用-{C:1}=abc和{C:2}=123同样,这篇文章可能会提供答案- 编辑:上面链接中的示例 注意trackAllCaptures=true
很遗憾,从来没有人回复过。应该将其标记为答案!为我做了一件好事。
<rewrite>
<rules>
<rule name="first" stopProcessing="true">
<match url="search/" />
<conditions trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="t1=([0-9a-zA-Z]+)" />
</conditions>
<action type="Redirect" url="search/{C:1}/" appendQueryString="false" />
</rule>
<rule name="second" stopProcessing="true">
<match url="search/" />
<conditions trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="t2=([0-9a-zA-Z]+)" />
</conditions>
<action type="Redirect" url="search/{C:1}/" appendQueryString="false" />
</rule>
</rules>
</rewrite>
<rule name="a" stopProcessing="true">
<match url="search2/" />
<conditions trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="t1=([0-9a-zA-Z]+)" />
<add input="{QUERY_STRING}" pattern="t2=([0-9a-zA-Z]+)" />
</conditions>
<action type="Redirect" url="search2/{C:1}/{C:2}" appendQueryString="false" />
</rule>