[問題] 如何載入網頁清除圖片快取?

作者: jami520 (我的生命因你而發光)   2020-06-16 06:07:04
目前FTP有一張圖片會持續更新(檔名都是固定)
但在網頁呈現部份似乎都會停留在一開始載入的圖片狀態
而非最新已經更新的圖片
目前我有在網頁加入以下程式碼,但似乎好像沒有作用
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="0">
總是要按Shift + F5清除網頁暫存重新載入,才會顯示最新圖片
不知道有什麼方式可以解決呢? 謝謝
作者: BugofBook (數學書蟲)   2020-06-16 08:39:00
你需要的不是清除快取,而是定時器+ajax。網頁載入時就己經把後臺"當時"的圖片下載到網頁了。網頁本來就不會"主動"知道FTP有沒有換圖,除非加上定時器每隔一段時間就問FTP有沒有更新圖片。這就像是去餐廳點套餐。套餐送到後,就算餐廳更改了套餐內容,己經拿到手的套餐也不會改變,除非你主動要店家更新套餐。
作者: ian90911 (xopowo)   2020-06-16 12:18:00
想辦法讓圖片header cache control no-cache或者用querystring
作者: wayway2004 (暐暐)   2020-06-16 12:39:00
檔名後面加上亂數參數 (xxx.png?123456)
作者: vi000246 (Vi)   2020-06-16 13:10:00
請說清楚你的需求 是要網頁不動 自動更新圖片還是重整時出現最新圖片?
作者: sa0124 ((恩恩))   2020-06-16 20:55:00
我都是直接圖片網址後面打?+Date.now()
作者: mamapick (愛飛翔)   2020-06-25 12:01:00
搜尋cache busting,把需要更新的檔案加入hash, file_hashxxxx.js(css/png...etc)另外可以去看看Server的htaccess設定,把Etag關掉只開no-cache試看看

Links booklink

Contact Us: admin [ a t ] ucptt.com