清理网站缓存的几种方法
meta方法
?
1 2 3 4 | //不缓存 < META HTTP-EQUIV = "pragma" CONTENT = "no-cache" > < META HTTP-EQUIV = "Cache-Control" CONTENT = "no-cache, must-revalidate" > < META HTTP-EQUIV = "expires" CONTENT = "0" > |
清理form表单的临时缓存
<body onLoad="javascript:document.yourFormName.reset()">
其实form表单的缓存对于我们书写还是有帮助的,一般情况不建议清理,但是有时候为了安全问题等,需要清理一下!
jquery ajax清除浏览器缓存
方式一:用ajax请求服务器最新文件,并加上请求头If-Modified-Since和Cache-Control,如下:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 | $.ajax({ url: 'www.haorooms.com' , dataType: 'json' , data:{}, beforeSend : function (xmlHttp){ xmlHttp.setRequestHeader( "If-Modified-Since" , "0" ); xmlHttp.setRequestHeader( "Cache-Control" , "no-cache" ); }, success: function (response){ //操作 } async: false }); |
方法二,直接用cache:false,
?
1 2 3 4 5 6 7 8 9 10 11 | $.ajax({ url: 'www.haorooms.com' , dataType: 'json' , data:{}, cache: false , ifModified : true , success: function (response){ //操作 } async: false }); |
方法三:用随机数,随机数也是避免缓存的一种很不错的方法!
URL 参数后加上 "?ran=" + Math.random(); //当然这里参数 ran可以任意取了
方法四:用随机时间,和随机数一样。
在 URL 参数后加上 "?timestamp=" + new Date().getTime();
用php后端清理
在服务端加 header("Cache-Control: no-cache, must-revalidate");等等(如php中)
方法五:
window.location.replace("WebForm1.aspx");
参数就是你要覆盖的页面,replace的原理就是用当前页面替换掉replace参数指定的页面。
这样可以防止用户点击back键。使用的是javascript脚本,举例如下:
a.html
以下是引用片段:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 | < html > < head > < title >a</ title > < script language = "javascript" > function jump(){ window.location.replace("b.html"); } </ script > </ head > < body > < a href = "javascript:jump()" rel = "external nofollow" rel = "external nofollow" >b</ a > </ body > </ html > |
b.html
以下是引用片段:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 | < html > < head > < title >b</ title > < script language = "javascript" > function jump(){ window.location.replace("a.html"); } </ script > </ head > < body > < a href = "javascript:jump()" rel = "external nofollow" rel = "external nofollow" >a</ a > </ body > </ html > |