UrlRewriting with urlrewritingnet



我想重写url如下http://www.abc.com/ac/ac0008到http://www.abc.com/temp/urlRewriter.aspx?oldurl=/ac/ac0008

http://www.abc.com/ac/ac0008?vmid=233 to http://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" />

但是这个规则只对第一个url有效,对于第二个url它只发送/ac/ac0008而不是这样发送/ac/ac0008/vmid=233

谁能给我一个示例规则重写url与querystring参数。那我就有主意了

谢谢。

我想你把代码弄乱了。

对于第二条规则,新的url将是这样的:~/temp/UrlRewriter.aspx ?自行车= y& 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 :)

最新更新