类似规则的问题IIS 7重写

时间:2010-07-20 14:15:50

标签: iis url iis-7 url-rewriting rewrite

我有2个类似的重写规则,就是互相残杀。

这些是我的规则:

<rule name="Product rewrite">
<match url="^product/([_0-9a-z-]+)/([0-9]+)" />
<action type="Rewrite" url="product.asp?id={R:2}" />
</rule>

<rule name="Article rewrite">
<match url="^([_0-9a-z-]+)/([0-9]+)" />
<action type="Rewrite" url="article.asp?id={R:2}" />
</rule>

现在的问题是,当我这样调用页面时:

/产品/ 56小分/ 14

然后调用article.asp而不是product.asp,但是当我像这样设置URL时:

/product/56-little-stars/14
然后一切都很好。所以你能告诉我如何使所有2个重写规则一起工作。我想能够打电话给这样的文章:

/this-is-title-of-my-article/11 <-> article.asp?id=11

打电话给这样的产品

/product/56-little-stars/14 <-> product.asp?id=14

谢谢!

1 个答案:

答案 0 :(得分:0)

如果我理解正确你只需要添加stopProcessing =“true”,这样一旦产品规则适用(更具体),那么它就不会应用第二个。

<rule name="Product rewrite" stopProcessing="true">