2013-08-19 62 views
6

我正在运行安装了官方重写规则模块的IIS 7。我想创建一个重写规则到这个URL匹配:如何通过IIS重写规则追加查询字符串&值?

http://www.sample.com/en-us/test.aspx?q=keyword 

改写预期的结果将是后:

http://www.sample.com/en-us/test.aspx?q=keyword&flag=value 

如何创建一个规则来实现这一点?

我测试过下面的规则,但没有运气,它总是有重定向循环错误:

<rewrite> 
    <rules> 
     <rule name="test" stopProcessing="true"> 
      <match url="(.*)/test\.aspx(.(?!flag=value))*$" /> 
      <action type="Redirect" url="{R:0}&amp;flag=value" appendQueryString="false" logRewrittenUrl="true" /> 
     </rule> 
    </rules> 
</rewrite> 

回答

17

发现自己的解决方案,只是分享。

<rewrite> 
    <rules> 
     <rule name="Redirect for download result page" stopProcessing="true"> 
      <match url="(.*)/test.aspx(.*)" /> 
      <action type="Redirect" url="{R:1}/test.aspx?rf=sp" appendQueryString="true" redirectType="Found" /> 
      <conditions> 
       <add input="{QUERY_STRING}" pattern="flag=value" negate="true" /> 
      </conditions> 
     </rule> 
    </rules> 
</rewrite> 
+0

@AnujKu虽然你可以接受你自己的答案,它不会给你任何观点。 –

相关问题