如何禁止页面缓存。

<metahttp-equiv="Pragma"content="no-cache"/><metahttp-equiv="Cache-Control"content="n... <meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-cache,must-revalidate"/>
<meta http-equiv="Expires" content="Wed, 26 Feb 1997 08:21:57 GMT"/>
这些都没用,一起加上也没用。?
不要CTRL-C CTRL-V的答案,需要实际解决问题的
展开
 我来答
zhuxinjun1982
2013-09-21 · 知道合伙人互联网行家
zhuxinjun1982
知道合伙人互联网行家
采纳数:2145 获赞数:8328
毕业于上海行健职业学院,大专学历;2007~2009在北大青鸟进修网络编程课目。现任网络主管,平时爱好上网。

向TA提问 私信TA
展开全部
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.1response.setHeader("Pragma","no-cache"); //HTTP 1.0response.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> 
 
6、php 
# 让它在过去就“失效"
 header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
# 永远是改动过的
 header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
# HTTP/1.1
 header("Cache-Control: no-store, no-cache, must-revalidate");
 header("Cache-Control: post-check=0, pre-check=0", false);
# HTTP/1.0
 header("Pragma: no-cache");

 网上给的这些方法你试过了吗?如果没试去试下,试了不行再说啊。

追问
html的试过了。一样会缓存。问题就是我的是html,无论怎样,浏览器都会缓存。
追答

网上查了下都是这么写地,晕,你是不是哪里写错了。

<META HTTP-EQUIV="pragma" CONTENT="no-cache"> 
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store, must-revalidate"> 
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT"> 
<META HTTP-EQUIV="expires" CONTENT="0"> 

你把你的这句
<meta http-equiv="Cache-Control" content="no-cache,must-revalidate"/>
改成
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store, must-revalidate"> 
试试。好像第四行代码你也没有的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式