在umbraco中调试Url重写

时间:2011-05-09 05:02:13

标签: asp.net umbraco

我为我的umbraco网站指定了一个网址重写规则,如:

<add name="circuitdetail" 
    virtualUrl="^~/circuits/(.*).aspx" 
    rewriteUrlParameter="ExcludeFromClientQueryString" 
    destinationUrl="~/circuits/detail.aspx?circuit=$1" 
    ignoreCase="true" />

我想将/ circuits / albert-park映射到/ circuits / detail?circuit = albert-park。
当我输入第二个网址时,我正确地获得了所需的页面,但是当我进入第一个网页时,我得到了我的404页面。

在Umbraco中,我有一个名为“Circuits”的页面,并在其下面嵌套名为Detail的页面。如上所述,输入不友好的URL有效但似乎url重写不起作用。

我做错了什么?

1 个答案:

答案 0 :(得分:3)

看起来您的RegEx与destinationURL以及VirtualURL匹配。

所以当它重写为~/circuits/detail.aspx?circuit=$1

这也与^~/circuits/(.*).aspx RegEx.

相匹配

在RegEx的末尾添加$应该修复它。 $告诉RegEx匹配到行尾。

^~/circuits/(.*).aspx$

更多信息:http://www.regular-expressions.info/anchors.html