您的位置:首页 > 其它

禁用页面缓存的几种方法(静态和动态)

2008-01-22 23:38 483 查看
1、在Asp页面首部<head>加入

以下是引用片段:

Response.Buffer = True

Response.ExpiresAbsolute = Now() - 1

Response.Expires = 0

Response.CacheControl = "no-cache"

Response.AddHeader "Pragma", "No-Cache"
  2、在HtML代码中加入

以下是引用片段:

<HEAD>

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">

<META HTTP-EQUIV="Expires" CONTENT="0">

</HEAD>
  3、在重新调用原页面的时候在给页面传一个参数 Href="****.asp?random()"
  前两个方法据说有时会失效,而第三种则是在跳转时传一个随机的参数! 因为aspx的缓存是与参数相关的,如果参数不同就不会使用缓存,而会重新生成页面,每次都传一个随机的参数就可以避免使用缓存。这个仅适用于asp&asp.net

  4、在jsp页面中可使用如下代码实现无缓存:

以下是引用片段:

response.setHeader("Cache-Control","no-cache"); //HTTP 1.1

response.setHeader("Pragma","no-cache"); //HTTP 1.0

response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
  这些代码加在<head> </head>中间具体如下

以下是引用片段:

<head>

<%

response.setHeader("Cache-Control","no-cache"); //HTTP 1.1

response.setHeader("Pragma","no-cache"); //HTTP 1.0

response.setDateHeader ("Expires", 0); //prevents caching at the proxy server

%>

</head>
  5、window.location.replace("WebForm1.aspx");

  参数就是你要覆盖的页面,replace的原理就是用当前页面替换掉replace参数指定的页面。

这样可以防止用户点击back键。使用的是javascript脚本,举例如下:

  a.html

以下是引用片段:

<html>

<head>

<title>a</title>

<script language="javascript">

function jump(){

window.location.replace("b.html");

}

</script>

</head>

<body>

<a href="javascript:jump()">b</a>

</body>

</html>
  b.html

以下是引用片段:

<html>

<head>

<title>b</title>

<script language="javascript">

function jump(){

window.location.replace("a.html");

}

</script>

</head>

<body>

<a href="javascript:jump()">a</a>

</body>

</html>
  前4种只是清空了cache,即存储在Temporary Internet Files文件夹中的临时文件,而第五种则是使用跳转页面文件替换当前页面文件,并没有清空cache,也就是说Temporary Internet Files产生了相关的临时文件,两者搭配使用真是清空缓存,必备良药。正好我这里有了记录,所以常来看看哦。

原文出处:http://www.365tech.net/Programme_Others/32654
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: