如何確保靜態內容(圖像,CSS,JavaScript)被緩存?什麼是最好的方法?如何確保靜態內容緩存在客戶端?
8
A
回答
12
建議您通過this tutorial瞭解一般情況下Web(HTTP)上的緩存發生情況。
簡而言之,Web服務器需要生成適當的HTTP頭,同時將內容發送到客戶端以控制客戶端緩存。在ASP.NET/IIS環境中,它的IIS通常處理靜態文件內容,因此必須根據需要適當配置IIS以控制緩存靜態文件。見下面的鏈接以獲取更多信息有關配置IIS緩存靜態內容:
http://www.iis.net/ConfigReference/system.webServer/staticContent/clientCache
How to configure static content cache per folder and extension in IIS7?
編輯:正如你問的最佳方法,最普遍的做法,我現在看到天到版本靜態內容(比如通過在文件或URL末尾附加一些版本標識符)。一旦版本化,您可以將其視爲不可變,然後發出緩存標頭以將其緩存無限期。在ASP.NET應用程序中,您可以將程序集版本(或產品版本)附加到每個靜態內容URL。所以基本上,你會使每個構建(或每個產品版本)的緩存失效。
0
您還可以使用HTML5離線Web應用程序清單。它允許你設置一個清單,你可以定義哪些文件將被本地緩存。
這是一個很好的,清楚的瞭解廣泛實施,避免必須瞭解有關IIS
和HTML
緩存的方法。
http://www.w3schools.com/html/html5_app_cache.asp
(你應該完全讀了這些事情)
相關問題
- 1. MVC客戶端緩存的靜態內容不工作
- 2. 從客戶端緩存中檢索靜態HTML內容(動態內容)
- 3. 客戶端緩存表單內容
- 4. 靜態內容緩存
- 5. 緩存靜態內容
- 6. 啓用 「動態」 的內容客戶端緩存(asp.net的MVC 3.0)
- 7. Angular:應該緩存靜態內容嗎?
- 8. 如何將所有靜態內容保留在內容之下?
- 9. 客戶端緩存問題?
- 10. Apollo客戶端緩存
- 11. Web客戶端緩存
- 12. Resteasy客戶端Http緩存
- 13. 客戶端圖像緩存
- 14. 客戶端緩存vs Cookie
- 15. 禁用客戶端緩存
- 16. 如何讓客戶端緩存保持同步?
- 17. 如何下載客戶端內容
- 18. 如何讓mod_python網站允許客戶端緩存選定的圖片內容?
- 19. Tomcat保護靜態內容
- 20. 如何確保我的服務器讀取客戶端寫入的內容?
- 21. 如何確保客戶端獲得404錯誤狀態?
- 22. 在Django中戰鬥客戶端緩存
- 23. 在OkHttp中禁用客戶端緩存
- 24. Smarty緩存(動態內容)
- 25. Danga客戶端保存的Memcached條目是否與Spy客戶端兼容?
- 26. Webapi中的服務器端緩存和客戶端緩存
- 27. 胖客戶端的客戶端緩存庫/框架
- 28. 客戶端UI的靜態HTML模板?
- 29. 在iPhone上存儲靜態內容?
- 30. Sensenet:使用Sensenet客戶端API初始化客戶端內容
+1本教程鏈接 – 2012-03-14 08:38:39
@VinayC怎麼樣在這個問題上[如何緩存ASP.NET MVC應用程序的js和css文件服務於IIS](http://stackoverflow.com/questions/41391542/how-to-cache-js-and-css-files-of-asp-net-mvc-application-served-on-iis/)?在此先感謝... – 2016-12-30 08:56:03
@ClintEastwood,只要您提供靜態文件,使用IIS配置發出緩存標頭就可以工作。要處理靜態內容的更新,您必須使用版本化的URL(例如/image/a.png?v=2),以便瀏覽器在您更改版本時再次請求。 – VinayC 2017-01-05 11:13:24