asp,php,jsp 不缓存网页的办法
ASP实例源码浏览次数:4 一般地,我们要查看Internet
网上的一个网页,那么
当您第一次访问这个网页的时候,
系统首先要将这个网页下载到您的本地计算机
的一个临时文件夹中进行缓存,
当在一定的时间内,
您第二次、
第三次来访问这
个网页的时候,
浏览器就直接从您的本地计算机的临时文件夹中读取这个文件显
示,
这样做的好处就是避免每次都要重新下载而占用大量的时间和网络资源,
不
得不说页面的缓存加快了网页的显示,
当然也有它的坏处,
例如当服务器上的网
页己经更新,
而本地显示的还是没有更新的网页,
这样就不能及时的显示更新后
的内容,
在某些情况下,
我们需要禁止浏览器缓存,
以使我们每次看到的页面都
是最新的页面
(例如后台操作、
大型网站的时时新闻页面)
,
这时我们就要禁用
浏览器缓存,下面分别说明了在四种不同的页面环境下来禁止网页缓存:
一、对于静态页:
可以利用
<meta>
标记符的另一种用法来实现,其用法为:
<meta http-equiv="Pragma" content="no-cache">
特别说明:
有很多人问到,
这样设置了没有用,
网页仍有缓存,
那是因为您没有
设置页面过期时间的原因,您必须同时指定当前页面的过期时间,例如:
<meta http-equiv="expires" content="Wed, 23 Aug 2006 12:40:27 UTC" />
这儿的
meta
标签用来定义页面过期时间为:
2006
年
8
月
23
日
23:40:27
需要特别注意的是
content
的值必须是一个
UTC
格式的标准时间
(有关
UTC
格式
的时间,请参见本站
javascript
教程)或者
GMT
时间(由于
GMT
时间己过时,
所以建议用
UTC
标准格式)
,
如果您要让网页立即过期,
您可以设置一个过期时
间远小于现在的时间,例如:
Mon,1 Jan 2001 0:0:0 UTC
二、对于
ASP
页面:
可利用以下语句下实现:
<%
Response.Buffer=true
Response.CacheControl="no-cache" '
禁止代理服务器缓存本页面
Response.Expires=-1000 '
让页面立即过期
(
这儿
最好设置一个绝对值较大的负数
)
%>
三、对于
JSP
页面:
<%
if (request.getProtocol().compareTo("HTTP/1.0")==0)
response.setHeader("Pragma","no-cache");
if (request.getProtocol().compareTo("HTTP/1.1")==0)
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires",0);
%>
四、对于PHP页面:
<?php
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
?>
说明:对于动态页面,缓存的代码必须放在任何
HTML
标签输出之前,否则
将会出错。
asp,php,jsp 不缓存网页的办法的更多相关文章
- 谈谈asp,php,jsp的优缺点
谈谈asp,php,jsp的优缺点 http://hi.baidu.com/lhyboy/item/f95bac264c38830d72863e41 asp.php.asp.net.jsp等主流网 ...
- JSP 页面缓存以及清除缓存
一.概述 缓存的思想可以应用在软件分层的各个层面.它是一种内部机制,对外界而言,是不可感知的. 数据库本身有缓存,持久层也可以缓存.(比如:hibernate,还分1级和2级缓存) 业务层也可以有缓存 ...
- 【转】asp.net mvc3 简单缓存实现sql依赖
asp.net mvc3 简单缓存实现sql依赖 议题 随 着网站的发展,大量用户访问流行内容和动态内容,这两个方面的因素会增加平均的载入时间,给Web服务器和数据库服务器造成大量的请求压力.而大 ...
- ASP、JSP、PHP 三种技术比较
目前,最常用的三种动态网页语言有ASP(Active Server Pages),JSP(JavaServer Pages),PHP (Hypertext Preprocessor). 简 介 : A ...
- ASP,ASP.net,JSP语法、内置对象对比
1 各自的HelloWord版本 1.1 ASP <% Response.Write("hello asp") %> 文件名为test.asp. 1.2 ASP.ne ...
- 细说 ASP.NET控制HTTP缓存[转]
阅读目录 开始 正常的HTTP请求过程 缓存页的请求过程 缓存页的服务端编程 什么是304应答? 如何编程实现304应答 如何避开HTTP缓存 在上篇博客[细说 ASP.NET Cache 及其高级用 ...
- ASP.NET MVC 3:缓存功能的设计问题
今天这一篇文章我来谈一谈在MVC 3项目中的缓存功能,以及针对缓存的一些设计上的考量,给大家参考参考. 为什么需要讨论缓存?缓存是一个中大型系统所必须考虑的问题.为了避免每次请求都去访问后台的资源(例 ...
- JS.中文乱码,Jsp\Servlet端的解决办法
JS.中文乱码,Jsp\Servlet端的解决办法 2010-03-08 15:18:21| 分类: Extjs | 标签:encodeuricomponent 乱码 urldecoder ...
- ASP.NET HttpRuntime.Cache缓存类使用总结
1.高性能文件缓存key-value存储—Redis 2.高性能文件缓存key-value存储—Memcached 备注:三篇博文结合阅读,简单理解并且使用,如果想深入学习,请多参考文章中给出的博文地 ...
随机推荐
- Enum to String 一般用法
目录 一.Enum Review 二.使用name()方法转换为String 三.使用toString()方法转换为String 四.使用成员属性转换为String 一.Enum Review J ...
- dubbo springCloud比较
1.dubbo只是专注于服务之间的治理,配置中心.分布式跟踪等这些内容都需要自己集成 2.dubbo核心功能: a.远程通讯 b.集群容错 c.自动发现 Dubbo SpringCloud 服务注册中 ...
- http权威指南(一)-Http概述
Http概述 在Web中,不管是浏览器还是server都是通过Http相互通信的.那么Http是怎样工作的呢? 首先,client向server发送Http请求,server会在Http响应中回送所请 ...
- 为什么java web项目中要使用spring
1 不使用spring的理由 spring太复杂,不利于调试. spring太复杂,不利于全面掌控代码. spring加载bean太慢. 等等. 2 对不使用spring理由的辩驳 spring io ...
- mysql 数据库导入错误:40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;/*!40101 SET @OLD_CHARACTER_SET_RES ...
- js 原型继承和class继承
摘自http://www.liaoxuefeng.com/ 在传统的基于Class的语言如Java.C++中,继承的本质是扩展一个已有的Class,并生成新的Subclass. 由于这类语言严格区分类 ...
- 将异常(getStackTrace)转化成String
方法一: private static String getStackMsg(Exception e) { StringBuffer sb = new StringBuffer(); StackTra ...
- Struts错误信息回传
<td height="20" align="center" class="loginMiddleDiv_loginInfo_window_wa ...
- DataSnap的如果网络断线,如何恢复?
timer代码很简单:var adbsevertime :TDateTime;begin try adbsevertime := ClientModule1.ServerMethods1Client. ...
- js中的width问题
1.在jQuery中,width()方法用于获得元素宽度: innerWidth()方法用于获得包括内边界(padding)的元素宽度, outerWidth()方法用于获得包括内边界(padding ...