服务器上webpack打包的过期hash文件如何进行清理

服务器上webpack打包的过期hash文件如何进行清理,第1张

概述服务器上webpack打包过期hash文件如何进行清理 本篇文章给大家带来的内容是关于服务器上webpack打包的过期hash文件如何进行清理,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

现在前端的项目基本上都会用 webpack 打包代码,并且文件名(HTML 文件除外)都是 hash 化的,这样可以去除浏览器的缓存。但是会产生另外一个问题,就是服务器上会堆积大量过期(不会被用到)的 hash 文件,这些文件又主要是 Js 和 CSS 文件,因为基本上每构建一次都会产生新的 Js 和 CSS 文件。如果这些文件不清除的话,会大量占用服务器存储空间。

1. 思路

1、从 HTML 文件中读取 CSS 文件的 hash 值集合;

2、然后根据这些 hash 值集合,把 hash 不在这个集合内的 CSS 文件删掉;

3、从 HTML 文件中读取 Js 文件的 hash 值集合;

4、然后根据这些 hash 值集合,把不属于动态加载的,并且 hash 不在这个集合内的 Js 文件删掉;(动态加载 Js 参考 dynamic-imports)

5、从不属于动态加载的 Js 文件中读取动态加载的Js 文件的 hash 值集合;

6、然后根据这些 hash 值集合,把动态加载的,并且 hash 不在这个集合内的 Js 文件删掉;

7、从剩下的 HTML,CSS,Js 文件中读取图片、字体等其他静态资源文件的 hash 值集合;

8、然后根据这些 hash 值集合,把 hash 不在这个集合内的静态资源文件删掉。

2. sclean

基于上面这个思路,我封装了一个 npm 包:sclean.

主要有以下几个功能:

1、备份服务器文件,因为删除是非常危险的一个 *** 作,所以在每次清除过期文件之前都会备份一次,当然也可以手动备份;

2、恢复服务器文件到之前备份的某个状态(用于清除出错之后的恢复 *** 作);

3、根据配置进行清除 *** 作,比如自定义目标目录(dist, build),HTML文件(PHP, Jsp),hash 长度(32, 8)等。

安装

npm install sclean -g

执行清除 *** 作

sclean
总结

以上是内存溢出为你收集整理的服务器上webpack打包的过期hash文件如何进行清理全部内容,希望文章能够帮你解决服务器上webpack打包的过期hash文件如何进行清理所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1013677.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存