URL重写错误匹配IIS

时间:2016-12-30 09:33:49

标签: asp.net iis url-rewriting

所以我的网址是 ' http://localhost:1272/pdp/Gitanjali-1GMRose995-24KtGoldCoin?id=GR-995-1GM-12269&#39 ;.如果网址包含单词' pdp',我希望IIS重定向到某个页面。但是,由于这也可以作为产品名称的一部分出现在我希望IIS与/pdp/匹配的网址中,而不仅仅是单词pdp

这就是我的尝试:

<rule name="test" stopProcessing="true">
       <match url="/pdp/" />
        <action type="Rewrite" url="/Product/ProductDisplay.aspx" logRewrittenUrl="true" />
  </rule>


    <rule name="test" stopProcessing="true">
       <match url="\/pdp\/" />
        <action type="Rewrite" url="/Product/ProductDisplay.aspx" logRewrittenUrl="true" />
  </rule>

这两条规则都无法与以下内容相匹配:
http://localhost:1272/pdp/Gitanjali-1GMRose995-24KtGoldCoin?id=GR-995-1GM-12269

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我找到了答案。因为pdp是在url的开头,所以不需要第一个/ in / pdp /。删除它并使条件为

<rule name="test" stopProcessing="true">
   <match url="pdp\/" />
    <action type="Rewrite" url="/Product/ProductDisplay.aspx" logRewrittenUrl="true" />
</rule>

修复了问题。