0

我在进行讨厌的 URL 重写时遇到了麻烦,该 URL~/global/products/en/page?sdfsdf=sgdfg可以在没有查询字符串的情况下完美运行,但无法使用它。有人可以帮忙吗?移动网站~/global/products/en/m/page使用相同的规则,这就是为什么[a-zA-Z0-9/_-]*?中间有。规则 6 是我尝试修复它,但我在一般的正则表达式方面很糟糕,所以任何帮助都将不胜感激。

<add name="rule1" 
     virtualUrl="^~/[a-z-]*/([a-zA-Z0-9/_-]*?[^\.])$" 
     rewriteUrlParameter="ExcludeFromClientQueryString"   
     destinationUrl="~/country/$1.aspx" 
     ignoreCase="true" />
<add name="rule2" 
     virtualUrl="^~/[a-z-]*/([a-zA-Z0-9/_-]*?)(.+)\?(.*)$" 
     rewriteUrlParameter="ExcludeFromClientQueryString"    
     destinationUrl="~/country/$1.aspx?$2" 
     ignoreCase="true"/>
4

1 回答 1

2

更改ExcludeFromClientQueryStringIncludeQueryStringForRewrite

像这样:-

<add name="rule1" 
     virtualUrl="^~/[a-z-]*/([a-zA-Z0-9/_-]*?[^\.])$"           
     rewriteUrlParameter="IncludeQueryStringForRewrite" 
     destinationUrl="~/country/$1.aspx"  
     ignoreCase="true" />
<add name="rule2" 
     virtualUrl="^~/[a-z-]*/([a-zA-Z0-9/_-]*?)(.+)\?(.*)$" 
     rewriteUrlParameter="IncludeQueryStringForRewrite" 
     destinationUrl="~/country/$1.aspx?$2" 
     ignoreCase="true"/>
于 2012-11-02T13:27:44.613 回答