2012-12-17 57 views
1

進出口使用urlrewrite.net @http://urlrewriter.net執行URL重寫託管在Windows 2003服務器上的IIS 6urlrewrite.Net無限循環

我需要簡單地把一個長的動態URL,如.NET網站: http://mydomain.com/aircraft/result.aspx?view=,734,,810,,159,,163&cat=1&loc=999999&model=false

成一個較短的友好URL,例如: http://mydomain.com/forsale/manufacturer/,734,,810,,159,,163,/1/999999/false

我在我的web.config以下規則:

<rewrite url="^/forsale/(.+)/(.+)/(.+)/(.+)/(.+)" to="/aircraft/result.aspx?view=$2&amp;cat=$3&amp;loc=$4&amp;model=$5"/> 

當我進入這工作得很好以下的網址: http://mydomain.com/forsale/manufacturer/,734,,810,,159,,163,/1/999999/false

然而,當我觸發回發的進入一個無限循環,並在瀏覽器地址欄中的URL任何類型的雲都瘋了如: http://mydomain.com/aircraft/result.aspx?view=1&cat=999999&loc=detailed.aspx?AId=32270&Cat=Business-Jets&seo=Bombardier&model=Challenger%20300&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1&cat=1

這似乎是恢復到真實的URL,但增加重複的查詢字符串變量..

理想情況下,我想這對維持較短/友好重寫URL,但這個心不是關鍵的。主要目標是能夠實際允許回發事件,以便頁面適合用途。

任何幫助/建議/指針/答案將不勝感激!

在此先感謝。

回答

0

無限循環是由於頁面上有一些重定向代碼,這只是在以這種方式訪問​​時引起問題。刪除它已解決了循環問題,但導致真正的查詢字符串被添加到重寫url上。