網頁 cache 以及瀏覽器 Temporary Internet Files 造成瀏覽問題
今天公司設計遇到一個問題
一般我們上傳一個網頁檔 內部有圖有字
但是然後又更新 但是客戶還在ㄍㄞ 看到還是舊的…然後跟設計師在哪邊 ㄏㄨㄢ
後來去了解才知道是 cache 的問題
就是再瀏覽器(若沒有關閉再開啟)不會自動更新
所以在那邊使用reload 或按F5重新整理都沒辦法看到更新的內容
一般只要請使用者按 【Ctrl】 + 【F5】就可強制更新 ,解決現況
一般瀏覽器在瀏覽一個網頁時會把 網頁上的資料 複製一份到Temporary Internet Files就是這個原因所導致
so 若是想要自己處理掉這個問題,或是改善這問題有兩種方式
1. sending 一個 head , cache-control=no-cache, 及 pragma=no-cache
PHP的話可以用
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', FALSE);
header('Pragma: no-cache');
2. 你自己加個亂數字串
就是在路徑後加上亂數,瀏覽器會認定為不同網址
index.php?rand=7846312
———————————————————————-
但是這兩種方式對設計師都不方便使用
所以用第一種的概念 產生了第三種方式
在
內加入 meta tag 請求這樣就可以內容不被暫存
註:
不過 cache 有很多種,包括客戶家的 proxy server,所以,請多點人看
包含不同公司環境地點的人,只要確認外部看得到更新結果,就 OK 了
這是更新上傳後必須確認的….
謝謝您分享的方法,簡單又實用! 幫到我了~