如何确保静态内容缓存在客户端?

Ari*_*ian 9 asp.net iis caching browser-cache

如何确保缓存静态内容(图像,css,javascript)?什么是最好的方法?

Vin*_*ayC 13

建议您阅读本教程,了解一般情况下如何在Web(HTTP)上进行缓存.

简单来说,Web服务器需要在将内容发送到客户端时生成适当的HTTP头,以便控制客户端缓存.在ASP.NET/IIS环境中,其IIS通常处理静态文件内容,因此,您必须根据需要适当地配置IIS以控制缓存静态文件.有关为静态内容配置IIS缓存的详细信息,请参阅以下链接:

http://www.iis.net/ConfigReference/system.webServer/staticContent/clientCache
如何在IIS7中为每个文件夹和扩展配置静态内容缓存?

编辑:正如您所询问的最佳方法,我现在看到的最流行的方法是版本静态内容(比如在文件末尾或URL附加一些版本标识符).版本编辑后,您可以将其视为不可变,然后发出缓存标头以便无限期地缓存它.在ASP.NET应用程序中,您可以将程序集版本(或产品版本)附加到每个静态内容URL.基本上,您将使每个构建(或每个产品版本)的缓存无效.