【发布时间】:2011-04-12 21:19:22
【问题描述】:
我正在尝试将一些使用UrlRewriter.net 的重写规则添加到我的 ASP.NET Web 应用程序中。问题是我是 Regex 新手,provided examples 非常初级。
我的问题是:如何区分包含 GET 查询参数的 url?
即,如果我添加此规则:
<rewrite url="~/([.+])" to="~/$1.aspx" />
它会将www.example.com/products 重写为www.example.com/products.aspx,但它也会将www.example.com/products?id=1 重写为www.example.com/products?id=1.aspx。
问题实际上只发生在使用登录控件时,因为它创建了一个类似于www.example.com/login?returnUrl=/members 的url,我不知道如何重写它。
我想要的是:
- 将
www.ex.com/test重写为www.ex.com/test.aspx,并且 - 将
www.ex.com/test?page=dummy重写为www.ex.com/test.aspx?page=dummy.aspx
非常感谢!
[edit] 顺便说一句,我还没有想出如何为 UrlRewriter 打开控制台调试。我已将“注册记录器”部分添加到配置文件中,但 VS 输出窗口什么也没有显示。这也会很有帮助。
【问题讨论】:
标签: c# .net regex url-rewriting urlrewriter.net