当我部署 Angular 应用程序的新版本时,旧版本仍然存在。只是,修复的解决方法是对浏览器进行“硬”刷新。 (这不是一个可接受的解决方案)。
我在我的项目中使用 Yeoman(生成器角度)。我看了看Gruntfile.js
并看到它执行了一个在构建期间重命名所有内容的任务,包括图像、js、css。仅未重命名的文件是index.html
。我能做什么index.html
这样浏览器就会加载这个文件而不是使用缓存的版本?
您可以修改服务器配置,通过设置告诉浏览器不要缓存Cache
and Expires
响应头。我给你举一个 Nginx 的例子:
location / {
index index.html;
expires -1;
add_header Pragma "no-cache";
add_header Cache-Control "no-store";
}
在此我们做出回应index.html
带有阻止浏览器缓存的标头index.html
并且浏览器将始终获得最新的副本。现在,Grunt 已经根据内容重命名了 JS 和 CSS 文件,然后它会自动刷新。
当然,上面的例子是为了Nginx
配置。您可以为您的网络服务器实现它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)