UrlRewriting with urlrewritingnet

时间:2013-05-10 03:07:35

标签: .net url-rewriting web-config urlrewriting.net

我想重写下面的网址 http://www.abc.com/ac/ac0008http://www.abc.com/temp/urlRewriter.aspx?oldurl=/ac/ac0008

http://www.abc.com/ac/ac0008?vmid=233http://www.abc.com/temp/urlRewriter.aspx?oldurl=/ac/ac0008/vmid=233

所以,在我的urlrewritingnet规则是这样的

  <add name="ac_redir1" 
  virtualUrl="^~/ac/ac0008?vmid=(.*)" 
  rewriteUrlParameter="ExcludeFromClientQueryString" 
  destinationUrl="~/temp/UrlRewriter.aspx?bike=y&amp;oldUrl=/ac/ac0008?vmid=$1"    
  ignoreCase="true" />

但是这个规则仅适用于第一个网址,第二个网址只能发送/ ac / ac0008而且它不会像这样发送/ ac / ac0008 / vmid = 233

任何人都可以给我一个用querystring参数重写url的示例规则。然后我就可以做到这一点。

感谢。

1 个答案:

答案 0 :(得分:0)

我认为你搞砸了你的代码。

对于第二条规则,新网址将是这样的, 〜/ temp / UrlRewriter.aspx?bike = y&amp; oldUrl = / ac / ac0008?vmid = 233“

然后当您访问查询字符串时 如下

string oldurl = Request.QueryString["oldUrl"];
strign vmid =  Request.QueryString["vmid"];

现在

oldurl = "/ac/ac0008"
vmid = 233

你不会得到

oldurl = "ac/ac0008?vmid=233" at once :)
希望你有个主意。

相关问题