gpt4 book ai didi

iis-7 - 使用多个查询字符串重写 IIS URL

转载 作者:行者123 更新时间:2023-12-01 22:35:44 25 4
gpt4 key购买 nike

我对 URL 重写非常陌生,并尝试重写/重定向多个查询,但似乎不起作用。由于这是搜索结果并且具有不同的过滤,因此查询可能会有所不同。例如,在某些搜索中,我们可能有 t1=something 的查询,而在其他搜索中,我们可能有 t2=somethingelse ,有时我们可能会将它们组合起来,例如:t1 =某事&t2=某事其他

我正在使用 IIS7 和 web.config,这是我到目前为止所做的:
这是我的示例链接

www.website.com/search/?t1=first&t2=second 

我尝试了以下方法,但没有一个真正有效:
(1)

<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>

(2)

<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>

我非常感谢任何帮助。

谢谢。

最佳答案

此外,这篇文章可能会提供答案 -

Tracking Capture Groups Across Conditions setting

编辑:上面链接中的示例

注意trackAllCaptures=true

<rule name="Back-references with trackAllCaptures set to true">
<match url="^article\.aspx" >
<conditions trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="p1=([0-9]+)" />
<add input="{QUERY_STRING}" pattern="p2=([a-z]+)" />
</conditions>
<action type="Rewrite" url="article.aspx/{C:1}/{C:2}" /> <!-- rewrite action uses back-references to both conditions -->
</rule>

关于iis-7 - 使用多个查询字符串重写 IIS URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13184942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com