当前位置: 首页 > news >正文

园区二学一做网站杭州论坛网站制作

园区二学一做网站,杭州论坛网站制作,外贸资讯网站,淄博网站建设设计公司HTTP协议 (四) 缓存 阅读目录 缓存的概念缓存的好处Fiddler可以方便地查看缓存的header如何判断缓存新鲜度通过最后修改时间#xff0c;判断缓存新鲜度与缓存相关的headerETag浏览器不使用缓存直接使用缓存#xff0c;不去服务器端验证如何设置IE不使用缓存公有缓存和私有缓存…HTTP协议 (四) 缓存 阅读目录 缓存的概念缓存的好处Fiddler可以方便地查看缓存的header如何判断缓存新鲜度通过最后修改时间判断缓存新鲜度与缓存相关的headerETag浏览器不使用缓存直接使用缓存不去服务器端验证如何设置IE不使用缓存公有缓存和私有缓存的区别  缓存的概念 缓存这个东西真的是无处不在 有浏览器端的缓存 有服务器端的缓存有代理服务器的缓存 有ASP.NET页面缓存对象缓存。 数据库也有缓存 等等。 http中具有缓存功能的是浏览器缓存以及缓存代理服务器。   http缓存的是指:当Web请求抵达缓存时 如果本地有“已缓存的”副本就可以从本地存储设备而不是从原始服务器中提取这个文档。 缓存的好处 缓存的好处是显而易见的 好处有 1. 减少了冗余的数据传输节省了网费。 2. 减少了服务器的负担 大大提高了网站的性能 3. 加快了客户端加载网页的速度   Fiddler可以方便地查看缓存的header Fiddler中把header都分门别类的放在一起这样方便查看。   如何判断缓存新鲜度 Web服务器通过2种方式来判断浏览器缓存是否是最新的。 第一种 浏览器把缓存文件的最后修改时间通过 header ”If-Modified-Since“来告诉Web服务器。 第二种 浏览器把缓存文件的ETag, 通过header If-None-Match, 来告诉Web服务器。   通过最后修改时间, 来判断缓存新鲜度 1. 浏览器客户端想请求一个文档  首先检查本地缓存发现存在这个文档的缓存  获取缓存中文档的最后修改时间通过 If-Modified-Since 发送Request给Web服务器。 2. Web服务器收到Request将服务器的文档修改时间Last-Modified: 跟request header 中的If-Modified-Since相比较 如果时间是一样的 说明缓存还是最新的 Web服务器将发送304 Not Modified给浏览器客户端 告诉客户端直接使用缓存里的版本。如下图。 3. 假如该文档已经被更新了。Web服务器将发送该文档的最新版本给浏览器客户端 如下图。   实例 打开Fiddler, 然后打开博客园首页。然后F5刷新几次浏览器。 你会看到博客园首页也用了缓存。   与缓存有关的header 我们来看看每个header的具体含义。 Request Cache-Control: max-age0以秒为单位If-Modified-Since: Mon, 19 Nov 2012 08:38:01 GMT缓存文件的最后修改时间。If-None-Match: 0693f67a67cc1:0缓存文件的Etag值Cache-Control: no-cache不使用缓存Pragma: no-cache不使用缓存                 Response Cache-Control: public响应被缓存并且在多用户间共享  公有缓存和私有缓存的区别请看另一节Cache-Control: private响应只能作为私有缓存不能在用户之间共享Cache-Control:no-cache提醒浏览器要从服务器提取文档进行验证Cache-Control:no-store绝对禁止缓存用于机密敏感文件Cache-Control: max-age6060秒之后缓存过期相对时间Date: Mon, 19 Nov 2012 08:39:00 GMT当前response发送的时间Expires: Mon, 19 Nov 2012 08:40:01 GMT缓存过期的时间绝对时间Last-Modified: Mon, 19 Nov 2012 08:38:01 GMT服务器端文件的最后修改时间ETag: 20b1add7ec1cd1:0服务器端文件的Etag值                     如果同时存在cache-control和Expires怎么办呢 浏览器总是优先使用cache-control如果没有cache-control才考虑Expires    ETag ETag是实体标签Entity Tag的缩写 根据实体内容生成的一段hash字符串类似于MD5或者SHA1之后的结果可以标识资源的状态。 当资源发送改变时ETag也随之发生变化。 ETag是Web服务端产生的然后发给浏览器客户端。浏览器客户端是不用关心Etag是如何产生的。 为什么使用ETag呢 主要是为了解决Last-Modified 无法解决的一些问题。 1. 某些服务器不能精确得到文件的最后修改时间 这样就无法通过最后修改时间来判断文件是否更新了。 2. 某些文件的修改非常频繁在秒以下的时间内进行修改. Last-Modified只能精确到秒。 3. 一些文件的最后修改时间改变了但是内容并未改变。 我们不希望客户端认为这个文件修改了。   实例 打开Fiddler, 打开博客园首页。  你可以看到很多图片或者CSS文件都是用了缓存。 这些都是通过比较ETag的值来判断文件是否更新了。   浏览器不使用缓存 CTRLF5强制刷新浏览器或者设置IE。  可以让浏览器不使用缓存。 1. 浏览器发送Http request, 给Web 服务器 header中带有Cache-Control: no-cache.   明确告诉Web服务器客户端不使用缓存。  2. Web服务器将把最新的文档发送给浏览器客户端.   实例: 打开Fiddler, 打开博客园首页 然后按CTRLF5强制刷新浏览器你将看到 Pragma: no-cache的作用和Cache-Control: no-cache一模一样。 都是不使用缓存。 Pragma: no-cache 是HTTP 1.0中定义的 所以为了兼容HTTP 1.0. 所以会同时使用Pragma: no-cache和Cache-Control: no-cache   直接使用缓存不去服务器验证 按F5刷新浏览器和在地址栏里输入网址然后回车。 这两个行为是不一样的。 按F5刷新浏览器 浏览器会去Web服务器验证缓存。 如果是在地址栏输入网址然后回车浏览器会直接使用有效的缓存, 而不会发http request 去服务器验证缓存这种情况叫做缓存命中如下图   实例 比较第一次访问博客园主页和第二次博客园主页 1. 启动Fiddler, 用firefox打开博客园主页 发现有50多个session。 2. 按CTRLX将Fiddler中的所有session删除。 关闭firefox,重新打开一个firefox打开博客园主页。   发现只有30多个session. 分析  少了的session是因为firefox直接用了缓存而没有发http request。     如何设置IE不使用缓存 打开IE。点击工具栏上的 工具-Internet选项-常规-浏览历史记录 设置. 选择“从不”。然后保存。 然后点击“删除”  把Internet临时文件都删掉 IE缓存的文件就是Internet临时文件。   公有缓存和私有缓存的区别 Cache-Control: public 指可以公有缓存 可以是数千名用户共享的。 Cache-Control: private 指只支持私有缓存 私有缓存是单个用户专用的。 转载自   http://www.cnblogs.com/TankXiao/archive/2012/11/28/2793365.html 转载于:https://www.cnblogs.com/dhl-2013/p/3252904.html
http://www.huolong8.cn/news/264892/

相关文章:

  • 长沙 公司网站动漫做h免费网站有哪些
  • 网络优化的内容包括哪些sem和seo是什么
  • 工信部网站备案被删除wordpress好用插件
  • 做网站用什么开发好厦门网站seo哪家好
  • 网站上传百度多久收录嵌入式软件开发技术
  • wordpress统计插件下载泉州seo培训班
  • 青年旅行社网站建设规划书wordpress二维码插件
  • 上海自助建站系统坡头手机网站建设公司
  • dede模板网站教程北京推广网站
  • 如何理解电子商务网站建设与管理织梦做的网站如何上线
  • 云服务器wordpresswordpress 优化数据
  • 群站优化之链轮模式教育类网站如何做
  • 网站建设广告平台推广免费网站建设平台哪个好
  • 建设网站五个步骤成都软件开发外包
  • 做实验教学视频的网站微网站建设价格
  • 浙江省建设厅网站证件哪有做网站公司
  • 北京时间网站建设网站登录怎么退出
  • wordpress建站插件安全汉口网站制作
  • 官方网站建设哪家公司好网站群建设技术规范
  • 苏州建设招聘信息网站宣传软文模板
  • 创意经济型网站建设友链大全
  • 东莞网站优化公免签支付接入wordpress
  • 网站建设的总体设计思想新余百度网站建设
  • 丽江手机网站建设截止今天全世界新冠病人多少
  • 上海企业网站模板建站wordpress文章图片怎么居中
  • wordpress插件图片无法加载网站开发seo要求
  • 备案号注销了 新网站怎么备案上海科技网站设计建设
  • 如何运用网站模板装修公司网页设计模板
  • 如何在图片上做网站水印图类似源码之家的网站
  • 优秀购物网站成都网络优化网站建设