我们存在html文件的模板缓存问题,我们希望在不删除缓存数据的情况下解决该问题(如果删除它,则会发现性能问题)。 您对此有什么建议吗?
答案 0 :(得分:1)
一种解决问题的好方法是文件修订或散列,这种方法的概念是:
只需将我们的应用程序提供的每个html / js / img文件重命名为 在文件扩展名之前连接一个随机哈希
有很多可能的方法可以做到这一点。一种好方法是这三个步骤:
步骤1。创建 revision:rename gulp任务
gulp.task(“revision:rename”, [“compile”], () =>
gulp.src(["dist/**/*.html",
"dist/**/*.css",
"dist/**/*.js",
"dist/**/*.{jpg,png,jpeg,gif,svg}"])
.pipe(rev())
.pipe(revdel())
.pipe(gulp.dest(“dist”))
.pipe(rev.manifest({ path: “manifest.json” }))
.pipe(gulp.dest(“dist”))
);
第2步。创建 revision:updateReferences gulp任务
gulp.task(“revision:updateReferences”, [“compile”, “revision:rename”], () =>
gulp.src([“dist/manifest.json”,”dist/**/*.{html,json,css,js}”])
.pipe(collect())
.pipe(gulp.dest(“dist”))
);
第3步。创建 compile:production gulp任务
gulp.task(“compile:production”, [“compile”, “revision:rename”, “revision:updateReferences”]);
这3个步骤的解决方案摘自:
medium.com-Solving Browser Cache Hell With Gulp-Rev-作者: Felipe 伯纳德斯
答案 1 :(得分:0)
感谢您的回答,但我们的解决方案没有什么不同。在我们公司中,我们使用weblogic服务器,并且在部署应用程序时,它一次又一次地在特定文件夹中创建所有资源(保存先前的资源)。删除不必要的资源后,该应用将开始正常运行。