如何防止js和css缓存

html-css029

如何防止js和css缓存,第1张

解决办法一:每次修改js或css文件后,都要手工修改那个版本号,注意:是每修改一次(哪怕仅仅是改了一个字符)都要修改版本号;

解决办法二:如果嫌手工修改太麻烦,那可以通过程序来自动修改(用随机数做版本号)。如果你的网站是动态的,那可以通过后台程序来改,比如ASP的:

<link rel="stylesheet" href="static/mimi/css/main.css?v=<%=rnd()%>" type="text/css"/>

PHP的:

<link rel="stylesheet" href="static/mimi/css/main.css?v=<?php echo mt_rand()?>" type="text/css"/>

如果是静态网站那就要js脚本来实现了,这个稍微麻烦点,这里就不说了。

其实上述方法一和方法二的目的都是为了使每次打开的js或css的url不同,这样浏览器就不会去缓存区取数据,而是直接到网站下载。

如果上述方法仍然无效,那就是你的浏览器的缓存机制存在问题,比如“从不检查网页的新版本,除非手动刷新”,这个就要你自己去设置了。

config 文件添加配置即可,改动后,对应改动文件打包后的文件名会变化,避免缓存

我没改动任何文件,就进行两次打包来对比文件名,结果一样,我以为方法行不通,走了弯路

将路径 变成活的或者加随机数

例如:

link href="/css/styles.css?v=随机数" type="text/css"

link href="日期/css/styles.css?v=1234" type="text/css"