0

我刚开始在我的博客中使用 URLRewriter.net,但在获取查询字符串值时遇到了问题。我有一个规则设置,例如:

<rewrite url="~/blog.aspx(\?.+)?$"
    to="~/hiddenFolder/blog.aspx?mode=default&amp;$2"/>

但是当我尝试访问 /blog.aspx?page=1 时,没有传递页面参数。其他参数效果很好,重写规则没有冲突。

4

1 回答 1

2

我认为问题在于 $2 超出范围,因为您的 RegEx 中只有一组。试试 1 美元。

编辑

此外,查询字符串可能附加了另一个“?” 所以你需要把它移出括号。

您还需要一个额外的组来使规则与我们的不带“?”匹配。注意:我们现在返回到 $2 的结果 :)

<rewrite url="~/blog.aspx(\?(.+)?)?$"
    to="~/hiddenFolder/blog.aspx?mode=default&amp;$2"/>
于 2010-07-27T13:31:43.463 回答