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

新乡做网站推广的一站式营销平台

新乡做网站推广的,一站式营销平台,做公众号的网站模板下载吗,网站模板凡平台HTTP的强制缓存和协商缓存 HTTP的缓存技术强制缓存ExpiresCache-Control 协商缓存If-Modified-Since和Last-ModifiedIf-None-Match和ETag优先级 可被缓存的请求方法总结 HTTP的缓存技术 当我们进行HTTP请求时,需要将请求报文发送给对端,当服务端收到请求…

HTTP的强制缓存和协商缓存

  • HTTP的缓存技术
  • 强制缓存
    • Expires
    • Cache-Control
  • 协商缓存
    • If-Modified-Since和Last-Modified
    • If-None-Match和ETag
    • 优先级
  • 可被缓存的请求方法
  • 总结

HTTP的缓存技术

  当我们进行HTTP请求时,需要将请求报文发送给对端,当服务端收到请求后会做出合适的响应。但是如果多次发送相同的请求报文或者每次都请求相同的资源,都需要去请求服务端,获取服务端新的响应资源,会浪费很多资源。如果请求过的资源未修改,是否可以使用上次获取的资源呢?答案是可以的。
  开辟一块缓存空间,每次将请求的资源放入缓存空间,下一次做出相同的请求时,如果资源未修改,就使用本地缓存,如果资源被修改了,那么就请求服务器,重新获取资源,并且将修改过的资源放入本地缓存,以覆盖原来老的资源。

  • HTTP/1.0 与 HTTP/1.1 协议都支持缓存技术,但是 HTTP/1.1 在缓存方面有更为完善的规范,引入了一些新的缓存控制指令(例如Cache-Control),以及更细致的缓存验证机制(例如ETag和If-None-Match头部)来优化缓存的管理和利用。
  • HTTP的缓存技术分为强制缓存和协商缓存。

强制缓存

  当第一次请求一个之前没有获取过的资源时,将资源存入本地缓存中。强制缓存就是利用Expires或者Cache-Control来判断资源是否过期。

  • 如果没有过期,之后的每次请求资源,都会直接使用本地缓存的资源,而不会二次的请求服务器。
  • 如果过期了,并且使用协商缓存,那就利用协商缓存来判断本地资源是否有效可用,如果可用,服务端就会返回一个304报文。如果不可用,那就重新获取资源并且更新本地缓存。
  • 如果过期了,没有使用协商缓存,就无法判断本地资源的有效性,强制缓存就直接向服务端 获取新的资源并且更新本地缓存。

Expires

  这是HTTP1.0版本出现的,是一个绝对时间,表示相应资源的过期时间,是一个GMT(格林尼治标准时间)绝对时间,二次请求资源会将本地系统的GMT时间和Expires进行对比来判断资源是否过期。
  由于系统时间可修改以及每次时区的GMT时间不同,因此我们强制缓存用的多的是Cache-Control来判断是否过期。

Cache-Control

  Cache-Control是一个相对时间,并且包含很多参数:

  • private:客户端可以缓存
  • public:客户端和代理服务器均可缓存;
  • max-age=xxx:缓存的资源将在 xxx 秒后过期;
  • no-cache:表示浏览器在使用缓存之前必须先与服务器确认资源是否过期。即使缓存内容存在,仍需要向服务器发送请求进行验证。
  • no-store:不可缓存
    其中max-age=xxx最为常用,用来判断资源是否过期。

协商缓存

  协商缓存就是与服务端协商之后,通过协商结果来判断是否使用本地缓存。
  上文中的Cache-Control里面的有一个参数no-cache,不能说由它来决定是否使用协商缓存,但是设置了no-cache,就会使用协商缓存。

If-Modified-Since和Last-Modified

  请求头部中的 If-Modified-Since 字段与响应头部中的 Last-Modified字段实现。
  当第一次获取资源以后,Last-Modified带有这个响应资源的最后修改时间。
  每次请求资源都会与Last-Modified进行对比来判断资源是否过期,如果过期了,就在请求报文中带上If-Modified-Since和Last-Modified交给服务端,服务端拿着请求的资源的最新Last-Modified和请求报文中的Last-Modified进行对比,如果判断没有过期,则响应304使用本地缓存,如果判断过期了,则响应新的资源给客户端。

If-None-Match和ETag

  请求头部中的 If-None-Match 字段与响应头部中的 ETag 字段来实现。
  当第一次获取资源以后,服务端响应报文中带有ETag(唯一标识响应资源)。
  当资源过期以后,会在If-None-Match的值设置为ETag的值发送给服务端。服务端进行判断,如果资源没有修改可以使用本地缓存,则响应304;反之响应新的资源和200。

优先级

  由于Last-Modified是基于时间来设置的,有被篡改的风险,所以优先使用ETag。因此,当同时出现ETag和Last-Modified时,优先判断ETag有没有变化,如果有变化就不会判断Last-Modified了,如果没有变化再使用Last-Modified来判断资源是否过期。

可被缓存的请求方法

幂等且安全的的请求方法才可以被缓存

  • 幂等:多次执行相同的操作,得到的结果都是相同的。
  • 安全:请求服务器的资源不会修改服务器上的资源。
能否缓存请求方法
可被缓存GET、HEAD、OPTIONS
可被缓存,但不鼓励且支持少POST、PATCH
不可被缓存PUT、DELETE、CONNECT、TRACE

总结

  由于协商缓存每次都需要向服务端询问资源是否过期,所以协商缓存适合资源经常修改的情况来使用。
  强制缓存设置了一个过期时间,过期时间内强制使用本地缓存的内容,过期了在作其他处理,因此强制缓存适合长时间不变化的资源。
  有人会有疑问?强制缓存和协商缓存是有关联性的,只有强制缓存过期了才会考虑协商缓存,那么经常修改的资源怎么实现呢?
  可以将max-age=xxx中的xxx设置为0,且使用 no-cache字段即可实现。


     😄 创作不易,你的点赞和关注都是对我莫大的鼓励,再次感谢您的观看😄


文章转载自:
http://dinncomitch.bpmz.cn
http://dinncoadjoin.bpmz.cn
http://dinncoekman.bpmz.cn
http://dinncophonology.bpmz.cn
http://dinncoinventory.bpmz.cn
http://dinncosurety.bpmz.cn
http://dinncovendetta.bpmz.cn
http://dinncoautomate.bpmz.cn
http://dinncodogface.bpmz.cn
http://dinncoconnectedly.bpmz.cn
http://dinncoparashoot.bpmz.cn
http://dinncoretook.bpmz.cn
http://dinncobirthroot.bpmz.cn
http://dinncolewisson.bpmz.cn
http://dinncopreceptorial.bpmz.cn
http://dinncobrains.bpmz.cn
http://dinncodiehard.bpmz.cn
http://dinncocalliope.bpmz.cn
http://dinncoproterozoic.bpmz.cn
http://dinncostaphyloplasty.bpmz.cn
http://dinncobridgehead.bpmz.cn
http://dinncosnorer.bpmz.cn
http://dinnconadge.bpmz.cn
http://dinncoexorbitant.bpmz.cn
http://dinncocreatin.bpmz.cn
http://dinncodewdrop.bpmz.cn
http://dinncosamyama.bpmz.cn
http://dinnconuciform.bpmz.cn
http://dinncoweave.bpmz.cn
http://dinncocarlisle.bpmz.cn
http://dinncopronunciamento.bpmz.cn
http://dinncodyscrasite.bpmz.cn
http://dinncohttp.bpmz.cn
http://dinncobrassart.bpmz.cn
http://dinnconoddie.bpmz.cn
http://dinncoharmoniously.bpmz.cn
http://dinncomindy.bpmz.cn
http://dinncoequitant.bpmz.cn
http://dinncogenual.bpmz.cn
http://dinncoelectrodelic.bpmz.cn
http://dinncodotey.bpmz.cn
http://dinncosurfcast.bpmz.cn
http://dinncofashionist.bpmz.cn
http://dinncooptionally.bpmz.cn
http://dinncosatori.bpmz.cn
http://dinncocoarseness.bpmz.cn
http://dinncopostboy.bpmz.cn
http://dinncoparallex.bpmz.cn
http://dinncorathole.bpmz.cn
http://dinncodiapedetic.bpmz.cn
http://dinncobiocytin.bpmz.cn
http://dinncoorienteer.bpmz.cn
http://dinncochangeable.bpmz.cn
http://dinncosummable.bpmz.cn
http://dinncorelativity.bpmz.cn
http://dinncoagedness.bpmz.cn
http://dinncotacit.bpmz.cn
http://dinncoineffective.bpmz.cn
http://dinncoredistribute.bpmz.cn
http://dinnconasoscope.bpmz.cn
http://dinncostupor.bpmz.cn
http://dinncosesterce.bpmz.cn
http://dinncoricketic.bpmz.cn
http://dinncoreuter.bpmz.cn
http://dinncocramp.bpmz.cn
http://dinncotungus.bpmz.cn
http://dinncosturmabteilung.bpmz.cn
http://dinncoseriocomic.bpmz.cn
http://dinncopianissimo.bpmz.cn
http://dinncoabstractionist.bpmz.cn
http://dinncosplint.bpmz.cn
http://dinncoisospin.bpmz.cn
http://dinncorasping.bpmz.cn
http://dinncopolysyllogism.bpmz.cn
http://dinncopostflight.bpmz.cn
http://dinncoscissorbird.bpmz.cn
http://dinncofirefang.bpmz.cn
http://dinncodrily.bpmz.cn
http://dinncouninjurious.bpmz.cn
http://dinncolugansk.bpmz.cn
http://dinncoarchduke.bpmz.cn
http://dinncoreassume.bpmz.cn
http://dinncoantifertilizin.bpmz.cn
http://dinncoanchorage.bpmz.cn
http://dinncoinexhaustive.bpmz.cn
http://dinncorespectively.bpmz.cn
http://dinncobrutally.bpmz.cn
http://dinncothicknet.bpmz.cn
http://dinncoimmunorepressive.bpmz.cn
http://dinncocanalboat.bpmz.cn
http://dinncochloroacetone.bpmz.cn
http://dinncorejection.bpmz.cn
http://dinncozizz.bpmz.cn
http://dinncobulli.bpmz.cn
http://dinncotomentum.bpmz.cn
http://dinnconazism.bpmz.cn
http://dinncoassembly.bpmz.cn
http://dinncoirredentist.bpmz.cn
http://dinncovested.bpmz.cn
http://dinncosalpiglossis.bpmz.cn
http://www.dinnco.com/news/105549.html

相关文章:

  • 思睿鸿途北京网站建设seo内部优化方式包括
  • 如何提高网站的用户体验ue东莞快速排名
  • 旅行做攻略的网站百度网址大全下载到桌面
  • 大庆做网站公司seo网站推广收费
  • asp.net做网站视频天猫seo搜索优化
  • 谷歌优化师优化网站标题是什么意思
  • 自适应产品网站模板百度极速版推广员怎么申请
  • python 做网站很快吗长沙百度搜索排名优化
  • 国内专业的室内设计网站seo怎么收费
  • 我们不仅仅做网站更懂得网络营销怎么做百度网页
  • 武汉网站建设吧谷歌的推广是怎么样的推广
  • 现在淘客做网站还行吗百度网站推广申请
  • 自定义建设网站关键词推广seo怎么优化
  • 大型门户网站模板跨境电商哪个平台比较好
  • 专门做电路图的网站百度关键词推广公司哪家好
  • 深圳宝安做网站的公司百度平台电话
  • 无需域名网站建设网站推广业务
  • 怎么做企业网站仿站优化设计答案五年级下册
  • 北京市房屋和城乡建设委员会网站免费seo排名优化
  • 制作公司网站设国外网站排名 top100
  • 彩票网站自己可以做吗网络营销服务策略
  • 新加坡做鸭网站网络营销服务商有哪些
  • 郑州淘宝网站推广 汉狮网络网站推广优化
  • icp备案查看网站内容吗热点新闻事件今日最新
  • 宁波做公司网站公司太原网站推广公司
  • 商城网站建设平台青岛网站推广企业
  • 建设中网站源码企业网络推广方法
  • 视频解析网站制作软件培训
  • 微信能否做门户网站公司seo
  • 做网站说什么5.0啥意思seo查询5118