如何確保靜態內容(圖像,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. 本地化/國際化靜態和動態內容,客戶端
- 8. 爲靜態內容緩存cdn服務?
- 9. 禁用靜態內容緩存gwan
- 10. Angular:應該緩存靜態內容嗎?
- 11. 如何在ASP.NET MVC中緩存外部靜態內容
- 12. 如何在CakePHP2中緩存靜態內容(css,images,js文件)?
- 13. 客戶端服務器編程緩衝區內容不正確
- 14. 如何控制客戶端緩存?
- 15. Jersey客戶端,內存泄漏,靜態和併發
- 16. 如何將所有靜態內容保留在內容之下?
- 17. 禁用客戶端緩存
- 18. Apollo客戶端緩存
- 19. Web客戶端緩存
- 20. Resteasy客戶端Http緩存
- 21. 客戶端圖像緩存
- 22. 客戶端緩存問題?
- 23. 客戶端緩存vs Cookie
- 24. 存儲沉重的內容客戶端
- 25. 如何讓客戶端緩存保持同步?
- 26. 如何使用ASP.NET 5和MVC 6緩存靜態內容?
- 27. 如何下載客戶端內容
- 28. 如何讓mod_python網站允許客戶端緩存選定的圖片內容?
- 29. Tomcat保護靜態內容
- 30. 防止在一個靜態文件中的JavaScript的客戶端緩存
+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