我設法用兩條規則來做這件事。沒有我想要的那麼漂亮,但你能做什麼?
<rule name="ProductsPagingRule" stopProcessing="false">
<match url="^products([a-z0-9\-/]*)(?:/([0-9]+)/)"/>
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="products{R:1}/?Page={R:2}" />
</rule>
<rule name="ProductsRule" stopProcessing="true">
<match url="^products/([a-z0-9\-/]*)/" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="products.aspx?PageId={R:1}" />
</rule>
最近我想出了一個單一的規則是:
^products(?=(?:(?:[a-z0-9\-/]*)/([0-9]+)/$)?)(.[a-z0-9\-/]*)
我仍然有興趣看到在一個單一的規則完成這件事,如果任何人的心情勇敢......
一對夫婦的我忘了提及的東西.... 1)它必須執行最後的斜線。 2)url結構中可以有任意數量的「attx /」文件夾。 – 2012-08-10 13:22:12
你會付多少錢爲你做這件事,因爲這似乎是你要找的東西? – 2012-08-10 13:52:18
http://whathaveyoutried.com/ – hometoast 2012-08-10 14:52:43