假如瀏覽器收到兩個location頭,它會怎麼辦?

前段時間寫代碼,header輸出兩個location的頭。

 

我理所當然的以爲第一個location之後,就已經跳轉到另一個頁面了。唉,無知真可怕啊!後來的結果是以第二個location爲準!

 

程序輸出了兩個location,但是到客戶端只有一個,中間有可能是php處理了多餘的頭,也有可能是服務器程序(apache、nginx)處理的。但是假如,假如服務器確確實實的給了他兩個location,瀏覽器會怎麼處理了。寫了段測試代碼,輸出兩個location的頭,以及重複輸出Cache-Control, Expires。瀏覽器產生的行爲結果如下:

重複兩條location頭,ie,firefox,chromium 均無法工作,ubuntu下chromium提示收到重複location頭,其它瀏覽器無提示

重複兩條Cache-Control頭,firefox, chromium 將兩條頭鏈接在一起:
Cache-Control: max-age=2592000, max-age=3592000,瀏覽器正常工作

重複兩條Expires頭,與cache-control一樣

 

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