瀏覽器重定向次數限制?

今天收到系統一問題,在IE8/IE7從某系統跳轉到我們系統的時候,會出現404,刷新之後就正常打開我們系統頁面了。如果第二次點連接跳轉到我們系統,是正常打開我們系統頁面的。

後來仔細分析發現,第一次跳轉過來的時候,存在我們系統的自動登錄過程,期間有一堆302。而刷新或者第二次再跳轉,由於少了認證過程,302次數少很多,就直接顯示了我們系統頁面,沒有出現404。仔細數了下在沒有登錄我們系統時候302的次數,是9,所以猜測是不是瀏覽器做了限制。換了chrome仍然出錯,換了FireFox竟然是好的。

於是就google了一把,發現還真是!但是這文章裏只列出了FireFox可以通過about:config修改network.http.redirection-limit項的值來改變重定向的限制次數,卻沒有找到chrome和IE8如何配置。

我把FireFox的值設置成10之後,問題重現了;設置成11之後,又不重現了。而我從Fiddler抓取的請求看,有9次302,在最後一次302時候發生404。網上也有說IE是限制了10次的,不過查到確切值。

302在跨系統交互中用的還是比較多的,這種問題也沒有辦法要求瀏覽器用戶修改默認值之類的來解決,所以只能通過減少系統間302跳轉次數來規避。

不過話說回來,瀏覽器做302跳轉次數限制,還是可以防止死循環跳轉的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章