HTTP缓存ETAG和Last-Modified】的更多相关文章

1) 什么是"Last-Modified"? 在浏览器第一次请求某一个URL时,服务器端的返回状态会是200,内容是你请求的资源,同时有一个Last-Modified的属性标记此文件在服务期端最后被修改的时间,格式类似这样: Last-Modified: Fri, 12 May 2006 18:53:33 GMT 客户端第二次请求此URL时,根据 HTTP 协议的规定,浏览器会向服务器传送 If-Modified-Since 报头,询问该时间之后文件是否有被修改过: If-Modifi…
设置浏览器缓存的几种方法: Last-Modified : 服务器上文件的最后修改时间 Etag  : 文件标识 Expiers : 本地缓存目录中文件过期的时间 ( 由服务器指定具体的时间 ) Cache-control  缓存控制 浏览器端的缓存规则 对于浏览器端的缓存规则是在HTTP协议头和 HTML 页面 Meat 标签中定义的.分别从 新鲜度 和 校验值两个维度来规定浏览器是否可以直接使用缓存中的副本,还是需要到原服务器获取更新的版本 新鲜度 ( 过期机制 ) :也就是缓存副本有效期.…
以前项目中遇到了很多浏览器缓存相关的问题,也在网上查过资料,搞过服务器的配置,来确保客户端加载服务器资源的速度和资源有效性.最近仔细看了下http协议中和缓存相关的一些属性,总结一下. 浏览器缓存原理 文字版描述 ①浏览器第一次访问服务器资源 /index.html 在浏览器中没有缓存文件,直接向服务器发送请求. 服务器返回  200 OK,实体中返回 index.html文件内容,并设置一个缓存过期时间,一个文件修改时间,一个根据index.html内容计算出来的实体标记Entity Tag,…
为什么有的缓存是 200 OK (from cache),有的缓存是 304 Not Modified 呢?很简单,看运维是否移除了 Entity Tag.移除了,就总是 200 OK (from cache).没有移除,就两者交替出现. 最近在做百度云观测的 nginx 配置优化.从知乎上看到这个问题:“阿里云存储如何让浏览器始终以200 (from cache)缓存图片?”,提问者强调 200 OK (from cache) 和 304 Not Modified 的区别,有感而发. 其实,…
转自:http://www.cnblogs.com/tzyy/p/4908165.html 浏览器缓存原理: 1.浏览器第一次访问服务器资源/index.html,在浏览器中没有缓存文件,直接向服务器发送请求,服务器返回200 OK 实体中返回index.html文件内容,并设置一个缓存过期时间,一个文件修改时间,一个根据index.html内容计算出来的实体标记Entity Tag简称ETag,浏览器将/index.html路径的请求缓存到本地 2.浏览器第二次访问服务资源/index.htm…
章节目录 浏览器缓存原理 文字版描述 一图以蔽之 缓存相关首部字段 request缓存相关首部字段 response缓存相关首部字段 实体首部缓存相关字段 缓存配置的一些注意事项 以前项目中遇到了很多浏览器缓存相关的问题,也在网上查过资料,搞过服务器的配置,来确保客户端加载服务器资源的速度和资源有效性.最近仔细看了下http协议中和缓存相关的一些属性,总结一下. 浏览器缓存原理 文字版描述 ①浏览器第一次访问服务器资源 /index.html 在浏览器中没有缓存文件,直接向服务器发送请求. 服务…
//========没有这个规则(ETag是否移除) 20160422============// 200 OK (from cache) 与 304 Not Modified 为什么有的缓存是 200 OK (from cache),有的缓存是 304 Not Modified 呢?很简单,看运维是否移除了 Entity Tag.移除了,就总是 200 OK (from cache).没有移除,就两者交替出现. 最近在做百度云观测的 nginx 配置优化.从知乎上看到这个问题:“阿里云存储如何…
为什么有的缓存是 200 OK (from cache),有的缓存是 304 Not Modified 呢?很简单,看运维是否移除了 Entity Tag.移除了,就总是 200 OK (from cache).没有移除,就两者交替出现. 当浏览器第一次加载资源的时候,返回一般为200,意思是成功获取资源,并会在浏览器的缓存中记录下max-age,第二次访问的时候:如果只是用浏览器打开,那么浏览器会去判断这个资源在缓存里有没有,如果有的话,会去判断max-age,看看过期没有,如果没有过期,则直…
阅读目录 一:浏览器缓存的作用是什么? 二:理解协商缓存 1 Last-Modified/if-Modify-Since 2 ETag/if-None-Match 三:理解强制缓存 回到顶部 一:浏览器缓存的作用是什么? 1. 缓存可以减少冗余的数据传输.节省了网络带宽,从而更快的加载页面.2. 缓存降低了服务器的要求,从而服务器更快的响应. 那么我们使用缓存,缓存的资源文件到什么地方去了呢? 那么首先来看下 memory cache 和 disk cache 缓存 memory cache:…
浏览器缓存与nginx缓存 浏览器缓存 优点:使用有效缓存时,没有网络消耗,速度快:即使有网络消耗,但对失效缓存使用304响应做到网络消耗最小化 缺点:仅提升一个用户的体验 nginx 缓存 优点:提升所有用户体验,相比浏览器缓存,有效降低上游服务的负载,通过304响应减少nginx与上游服务间的流量消耗 缺点:用户仍然保持网络消耗 同时使用浏览器与nginx缓存 Etag 头部 ETagHTTP 响应头是资源的特定版本的标识符.可以是缓存更高效,并节省带宽,因为如果内容没有改变.web服务不需…