我有一个单页应用程序(angular-js),它通过IIS提供服务。如何防止HTML文件被缓存?解决方案需要通过更改index.html或web.config中的内容来实现,因为无法通过管理控制台访问IIS。
目前我正在调查一些选项:
- web.config缓存配置文件 - http://www.iis.net/configreference/system.webserver/caching - web.config客户端缓存 - http://www.iis.net/configreference/system.webserver/staticcontent/clientcache - meta标签 - Using <meta> tags to turn off caching in all browsers? IIS版本为7.5,.NET框架为4。
目前我正在调查一些选项:
- web.config缓存配置文件 - http://www.iis.net/configreference/system.webserver/caching - web.config客户端缓存 - http://www.iis.net/configreference/system.webserver/staticcontent/clientcache - meta标签 - Using <meta> tags to turn off caching in all browsers? IIS版本为7.5,.NET框架为4。
Cache-Control: no-cache
并不会禁用缓存,而是强制客户端检查源服务器。因此,它与etag
头或可能不可靠的last-modifed
头协同工作,但它并没有完全禁用缓存。来自 MDN 的no-cache
描述如下:“缓存必须在使用缓存副本之前与源服务器进行验证。”换句话说,如果服务器没有返回 304,则浏览器仍然可以使用缓存副本。 - benbotto<action type="Rewrite" url="/index.html" />
,或者参考此链接获取完整的Web.config
。 - wal