我有一个使用HTML5 离线缓存的应用程序。现在我决定不再使用它,并manifest
从 index.html 文件中删除了该属性。但是,浏览器仍然认为该站点已缓存并拒绝更新 index.html 文件。
即使更新manifest
也无济于事。如何从用户的离线缓存中删除站点?我是否永远停留在缓存的网站上?
我有一个使用HTML5 离线缓存的应用程序。现在我决定不再使用它,并manifest
从 index.html 文件中删除了该属性。但是,浏览器仍然认为该站点已缓存并拒绝更新 index.html 文件。
即使更新manifest
也无济于事。如何从用户的离线缓存中删除站点?我是否永远停留在缓存的网站上?
您需要确保清单文件没有被缓存,默认情况下会缓存。
添加
ExpiresActive On
ExpiresDefault "access"
您的 .htaccess 将停止缓存所有内容,尽管您真的只是希望以这种方式缓存清单文件:(请记住更新文件名)
<Files cache.manifest>
ExpiresActive On
ExpiresDefault "access"
</Files>
您确实需要先这样做,但这应该可以缓解问题。
我建议您也阅读Mark Pilgrim 的页面。
尝试将您的内容更改manifest
为简单地CACHE MANIFEST
不列出任何文件。客户端应在下次访问站点时检索新清单,并且应删除其缓存。
但是请注意,在他们刷新页面之前,他们不会使用这个新的、空的清单。
我发现在某些情况下,在某些浏览器上,它们不一定会manifest
立即获取新内容。不过,这种行为似乎不一致。发生这种情况时,我倾向于手动清除他们的缓存/离线存储以强制他们更新(尽管我知道你不一定能让用户这样做)。