如何确保静态内容(图像,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