Meta http-equiv属性与HTTP头的Expires中(Cache-control)详解

1、概述css

A、http-equiv顾名思义,至关于http的文件头做用,它能够向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变量值。html

B、Cache-control用于控制HTTP缓存(在HTTP/1.0中可能部分没实现,仅仅实现了Pragma: no-cache)apache

2、基本内容浏览器

meat标签的http-equiv属性语法格式是:<meta http-equiv="参数" content="参数变量值"> ;
其中http-equiv属性主要有如下几种参数:

一、Expires(期限) 
说明:能够用于设定网页的到期时间。一旦网页过时,必须到服务器上从新传输。 
用法:缓存

1
<meta http-equiv= "expires" content= "Wed, 20 Jun 2007 22:33:00 GMT"

  注意:必须使用GMT的时间格式。 服务器

二、Pragma(cache模式) cookie

说明:是用于设定禁止浏览器从本地机的缓存中调阅页面内容,设定后一旦离开网页就没法从Cache中再调出 
用法:框架

<meta http-equiv="Pragma" content="no-cache">

  注意:这样设定,访问者将没法脱机浏览。 ide

三、Refresh(刷新)网站

说明:自动刷新并指向新页面。 
用法:

1
<meta http-equiv="Refresh" content="2;URL=http://www.net.cn/">

  注意:其中的2是指停留2秒钟后自动刷新到URL网址。

四、Set-Cookie(cookie设定)

1
<meta http-equiv="Set-Cookie" content="cookievalue=xxx;expires=Wednesday, 20-Jun-2007 22:33:00 GMT; path=/">

  注意:必须使用GMT的时间格式。

五、Window-target(显示窗口的设定) 

说明:强制页面在当前窗口以独立页面显示。 
用法:

1
<meta http-equiv="Window-target" content="_top">

  注意:用来防止别人在框架里调用本身的页面。

六、content-Type(显示字符集的设定) 

说明:设定页面使用的字符集。 
用法:

1
<meta http-equiv="content-Type" content="text/html; charset=gb2312">

七、Pics-label(网页等级评定) 

用法:

1
< meta http-equiv="Pics-label" contect="">

  说明:在IE的internet选项中有一项内容设置,能够防止浏览一些受限制的网站,而网站的限制级别就是经过meta属性来设置的。

八、Page_Enter、Page_Exit 

设定进入页面时的特殊效果

1
< meta http-equiv="Page-Enter" contect="revealTrans(duration=1.0,transtion=12)">   

设定离开页面时的特殊效果

1
< meta http-equiv="Page-Exit" contect="revealTrans(duration=1.0,transtion=    12)"> 

Duration的值为网页动态过渡的时间,单位为秒。  
Transition是过渡方式,它的值为0到23,分别对应24种过渡方式。以下表:  
0    盒状收缩    1    盒状放射  
2    圆形收缩    3    圆形放射  
4    由下往上    5    由上往下  
6    从左至右    7    从右至左  
8    垂直百叶窗    9    水平百叶窗  
10    水平格状百叶窗    11垂直格状百叶窗  
12    随意溶解    13从左右两端向中间展开  
14从中间向左右两端展开    15从上下两端向中间展开  
16从中间向上下两端展开    17    从右上角向左下角展开  
18    从右下角向左上角展开    19    从左上角向右下角展开  
20    从左下角向右上角展开    21    水平线状展开  
22    垂直线状展开    23    随机产生一种过渡方式  

九、清除缓存(再访问这个网站要从新下载!)

1
< meta http-equiv="cache-control" content="no-cache">

  

复制代码
 1 数据包中的格式:  2  3 Cache-Control: cache-directive  4  5 cache-directive能够为如下:  6  7 request时用到:  8  9 | "no-cache" 10 | "no-store" 11 | "max-age" "=" delta-seconds 12 | "max-stale" [ "=" delta-seconds ] 13 | "min-fresh" "=" delta-seconds 14 | "no-transform" 15 | "only-if-cached" 16 | "cache-extension" 17 response时用到: 18 19 | "public" 20 | "private" [ "=" <"> field-name <"> ] 21 | "no-cache" [ "=" <"> field-name <"> ] 22 | "no-store" 23 | "no-transform" 24 | "must-revalidate" 25 | "proxy-revalidate" 26 | "max-age" "=" delta-seconds 27 | "s-maxage" "=" delta-seconds 28 | "cache-extension" 29 部分说明: 30 根据是否可缓存分为 31 Public 指示响应可被任何缓存区缓存。 32 Private 指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这容许服务器仅仅描述当用户的 33 部分响应消息,此响应消息对于其余用户的请求无效。 34 no-cache 指示请求或响应消息不能缓存(HTTP/1.0用Pragma的no-cache替换) 35 根据什么能被缓存 36 no-store 用于防止重要的信息被无心的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。 37 根据缓存超时 38 max-age 指示客户机能够接收生存期不大于指定时间(以秒为单位)的响应。 39 min-fresh 指示客户机能够接收响应时间小于当前时间加上指定时间的响应。 40 max-stale 指示客户机能够接收超出超时期间的响应消息。若是指定max-stale消息的值,那么客户机能够 41 接收超出超时期指定值以内的响应消息。 42 Expires 表示存在时间,容许客户端在这个时间以前不去检查(发请求),等同max-age的 43 效果。可是若是同时存在,则被Cache-Control的max-age覆盖。 44 格式: 45 Expires = "Expires" ":" HTTP-date 46 例如 47 Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式) 48 49 2.应用 50 经过HTTP的META设置expires和cache-control 51 <meta http-equiv="Cache-Control" content="max-age=7200" /> 52 <meta http-equiv="Expires" content="Mon, 20 Jul 2009 23:00:00 GMT" /> 53 上述设置仅为举例,实际使用其一便可。这样写的话仅对该网页有效,对网页中的图片或其余请求无效,并不会作任何cache。 54 这样客户端的请求就多了,尽管只是检查Last-modified状态的东西,可是请求一多对浏览速度一定有影响。 55 若是要对文件添加cache能够经过apache的mod_expire模块,写法为 56 <IfModule mod_expires.c> 57 ExpiresActive On 58 ExpiresDefault "access plus 1 days" 59 </IfModule> 60 记得ExpiresActive设为On,我起先没设置On,彷佛怎样YSlow都查不到缓存机制。这样添加的话就是默认全部的。 61 若是要针对个别MIME类型则能够: 62 ExpiresByType image/gif "access plus 5 hours 3 minutes" 63 见 Apache Module mod_expires 64 另外,当点击浏览器上的刷新,客户端发送的请求中均是max-age=0,表示validate操做,发送请求到服务器 65 要求检查cache,再更新cache,通常获得的是304 Not Modified,表示没变更。
复制代码

十、设定网页的到期时间 

1
< meta http-equiv="expires" content="0">

十一、关键字,给搜索引擎用的 

1
< meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

12.页面描述 

1
< meta http-equiv="description" content="This is my page">

引用示例:

<!-- 下面三行是去除js和css缓存的 -->
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
相关文章
相关标签/搜索