2013-08-19 26 views
6

Tôi đang chạy IIS 7 với mô-đun quy tắc ghi đè chính thức được cài đặt. Tôi muốn tạo ra một quy tắc viết lại để phù hợp với URL này:Làm thế nào để nối chuỗi truy vấn & giá trị thông qua quy tắc viết lại IIS?

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

Sau khi viết lại kết quả dự kiến ​​sẽ là:

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

Làm thế nào tôi có thể tạo ra một quy tắc để thực hiện điều này?

Tôi đã thử nghiệm các nguyên tắc sau, nhưng không có may mắn, nó luôn luôn có chuyển hướng lỗi vòng lặp:

<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> 

Trả lời

17

Tìm thấy giải pháp của bản thân mình, chỉ cần chia sẻ nó.

<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 Trong khi bạn có thể chấp nhận câu trả lời của riêng mình, nó sẽ không cung cấp cho bạn bất kỳ điểm nào. –

Các vấn đề liên quan