回答
靜態內容的一種非常整潔的緩存方法是在URL中編碼靜態內容的版本。然後「通知」瀏覽器下載新的靜態內容只是向客戶端提供新的URL。
# first version access (1.1/main.css will never expire)
# e.g. by far future Cache-Control + Expires Header
<link ... href="/static/1.1/main.css
# after upgrading/releasing trigger fresh download
<link ... href="/static/1.2/main.css
它涉及到一些努力,你的構建+部署過程,但從緩存控制它是非常簡單的。
實際上,這通常是唯一可行的解決方案。 – EricLaw
因此,如果我有一個過期或cahce控制標題與說yeat到期,沒有辦法告訴瀏覽器檢查是否一個項目已更新? – chobo
基本上2 cache-style:1)Conditional-GET(瀏覽器正在做一個調用來檢查新內容,例如ETag或If-Modified-Since,導致304 Not-Modified或200 OK更新內容)。 2)告訴瀏覽器根本不打一個電話(例如Cache-Control:max-age,Expires標題)。 2)具有的優點是,您根本不會造成流量,但具有無法執行更新強制的缺點。所以我會使用樣式2),只有當我確定內容(通過URL標識)不會得到更新(請參閱我的初始答案)。 –
- 1. 使瀏覽器緩存圖像
- 2. 如何防止瀏覽器使用NGINX緩存特定圖像
- 3. ASP.NET - 使瀏覽器緩存無效
- 4. 瀏覽器緩存動態圖像嗎?
- 5. 在瀏覽器上緩存圖像
- 6. 瀏覽器圖像緩存規則
- 7. 強制瀏覽器緩存圖像
- 8. 帶有URL圖像源的Web瀏覽器圖像緩存
- 9. 使用.htaccess進行HTTP /瀏覽器緩存
- 10. 如何使用緩衝存儲器進行圖像下載?
- 11. 無法使用jQuery加載瀏覽器緩存中的圖像
- 12. jQuery,瀏覽器緩存,使用attr('src',newimage)刷新圖像
- 13. 瀏覽器如何比較URL以進行緩存?
- 14. JavaScript Image對象如何與瀏覽器緩存進行交互?
- 15. 如何禁用瀏覽器緩存?
- 16. 如何防止瀏覽器的圖像緩存?
- 17. 如何圖像緩存在瀏覽器中
- 18. 如何在裁剪時防止瀏覽器圖像緩存
- 19. 如何強制Web瀏覽器緩存圖像
- 20. 如何從php瀏覽器緩存圖像
- 21. 瀏覽器如何緩存文件和圖像?
- 22. 如果瀏覽器未使用,瀏覽器會緩存CSS背景圖片嗎?
- 23. 利用瀏覽器緩存
- 24. 禁用瀏覽器緩存
- 25. 使用Codeigniter進行圖像緩存
- 26. 如何使用solr緩存有效地使用HAProxy進行負載平衡?
- 27. PHP - 瀏覽器沒有緩存動態圖像
- 28. 谷歌瀏覽器沒有緩存圖像
- 29. 使用JavaScript來使瀏覽器的緩存無效
- 30. 如何選擇性地使緩存的圖庫圖像無效?
與往常一樣:所需*最大*高速緩存持續時間的組合,並確保服務器返回未修改的內容。智能服務器也可能使用[ETags](http://en.wikipedia.org/wiki/HTTP_ETag),這將允許在最後修改日期之後進行更多控制。 – 2011-09-01 17:36:35