iis重写规则匹配参数

时间:2015-06-02 08:57:34

标签: asp.net .net regex redirect iis

我尝试编写符合fr/Catalogue/?cf=jupes的规则并重定向到vetements-femme/jupes/

我写了以下规则:

  <rule name="PapJupesSansGenre">
    <match url="^fr\/Catalogue\/\?cf=jupes$"/>
    <action type="Redirect" url="vetements-femme/jupes/"/>
  </rule>

但它没有用。我想麻烦来自?,因为如果我尝试^fr\/Catalogue\/cf=jupes$它可以正常使用fr/Catalogue/cf=jupes

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

url不包含查询字符串部分,您应该添加条件以匹配网址和查询字符串。

以下规则应该有效:

<rule name="PapJupesSansGenre" >
  <match url="^/fr/Catalogue/$" />
  <conditions>
    <add input="{QUERY_STRING}" pattern="cf=jupes" />
  </conditions>
  <action type="Redirect" url="vetements-femme/jupes/" appendQueryString="false"/>
</rule>

appendQueryString属性将表明IIS不是vetements-femme/jupes/?cf=jupes