如何防止js和css缓存 20
网站后台添加内容后,浏览器打开网站总是要F5刷新后才能显示最新的内容。html页面引用了CSS和JS,我也在其后面加上版本号,但也是一样需要F5才能显示新内容。请各位大佬...
网站后台添加内容后,浏览器打开网站总是要F5刷新后才能显示最新的内容。html页面引用了CSS和JS,我也在其后面加上版本号,但也是一样需要F5才能显示新内容。请各位大佬赐教。本人小白刚刚接触,没有系统学习。所以请大佬们尽量描述的相信点。
展开
2个回答
展开全部
解决办法一:每次修改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不同,这样浏览器就不会去缓存区取数据,而是直接到网站下载。
如果上述方法仍然无效,那就是你的浏览器的缓存机制存在问题,比如“从不检查网页的新版本,除非手动刷新”,这个就要你自己去设置了。
解决办法二:如果嫌手工修改太麻烦,那可以通过程序来自动修改(用随机数做版本号)。如果你的网站是动态的,那可以通过后台程序来改,比如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不同,这样浏览器就不会去缓存区取数据,而是直接到网站下载。
如果上述方法仍然无效,那就是你的浏览器的缓存机制存在问题,比如“从不检查网页的新版本,除非手动刷新”,这个就要你自己去设置了。
更多追问追答
追问
大神,我的网站是静态的。
能详细说一下嘛?
追答
这行改为:
document.write('');
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询