我正在通過Internet Explorer 9的緩存撕裂我的頭髮。Internet Explorer 9忽略沒有緩存標頭
我根據查詢字符串值從perl腳本設置了一系列cookie。這些cookie包含關於橫幅和顏色等頁面上各種信息的信息。
我遇到的問題是,在IE9中,它始終總是使用緩存而不是使用新值。事件的順序運行是這樣的:
- 訪問www.example.com/?color=blue
- Perl腳本,使用cookies,我重定向回www.example.com
- 顏色有藍色,一切都如預期。
- 訪問www.example.com/?color=red
- 餅乾設置,設置爲紅色重定向,顏色,都屬於正常
- 重訪 www.example.com/?color=blue
- Perl腳本運行,Cookie重新設置(我已經證實了這一點),但! IE9從緩存中獲取所有資源,因此重定向時我的所有顏色都保持爲紅色。
因此,每次訪問新的URL時都會獲得新的資源,但每次訪問以前訪問過的URL時,都會從緩存中檢索它們。
以下meta標籤是在<頭example.com的>,我本以爲這防止使用緩存:
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
<META HTTP-EQUIV="EXPIRES" CONTENT="0">
對於它的價值 - 我也試過<META HTTP-EQUIV="EXPIRES" CONTENT="-1">
IE9似乎忽略所有這些指令。到目前爲止,我在瀏覽器中獲得成功的唯一時間是使用開發人員工具並確保將其手動設置爲「始終從服務器刷新」
爲什麼IE忽略我的標頭,以及如何強制它每次檢查服務器?
你看過http://stackoverflow.com/questions/4360283/http-cache-control?試過私人? –
好吧,我剛剛嘗試將其設置爲CONTENT =「PRIVATE」,並遇到同樣的問題。 –
嘗試進行客戶端API調用...在這種情況下,即使「始終從服務器刷新」也不起作用。 我現在有IE9幾乎和我討厭IE6一樣多 – Vroomfundel