我使用angularJS制作了一个网站。 但我遇到了问题。
我的用户收到很多错误,因为他们有一个旧的网站缓存版本,
所以我想做的是,以某种方式为缓存创建一个版本号,所以当用户调用错误时,我可以询问他们使用的是什么版本来查看缓存的网站是否旧了,问一个问题他们要清空缓存。
任何人都知道如何做到这一点?我不打算处理我的缓存,只显示一个数字,显示缓存版本。
答案 0 :(得分:0)
您可以添加一个打印到控制台的变量,该变量代表网站版本,当然只有在您添加它时才能看到它。
但是,旧的缓存版本的网站是一个解决的问题,您的用户根本不应该体验。可以通过向你要请求的js文件添加指纹来解决这个问题(添加一个后缀,即文件的校验和\最后更新时间),并且在提到js文件的主html上根本没有缓存。同样适用于可能在不同版本之间更改的css或其他文件。
根据您的静态文件服务器,有一些插件和模块可以解决此问题。在NginX上,最受欢迎的是PageSpeed: https://developers.google.com/speed/pagespeed/module/
可以在本指南的“无效和更新缓存的响应”中找到我上面写的内容(和pagespeed implements)的更详细说明: https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching#invalidating-and-updating-cached-responses