日期:2014-05-17  浏览次数:21356 次

禁用页面缓存的几种方法(静态和动态)
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 ");  
                &n