摘要:告訴瀏覽器在過期時間前瀏覽器可以直接從瀏覽器緩存取數(shù)據(jù),而無需再次請求。二協(xié)商緩存階段基于客戶端和服務(wù)器端的協(xié)商緩存機(jī)制需要與共同使用,如果配置了且沒有過期,就不會使用過期了之后,才會使用。
瀏覽器緩存
瀏覽器緩存分為幾個階段:
瀏覽器緩存階段 一.強(qiáng)制緩存階段1.cache-control: 決定了瀏覽器端和服務(wù)器端緩存的策略,可以出現(xiàn)在響應(yīng)頭response header中,或者 請求頭 request header中
max-age:指定緩存的最大有效時間,eg:cache-control:max-age=315360000,注意與
expires做區(qū)分(與cache-control平級),max-age優(yōu)先級高于 expires,這個屬性時HTTP1.1中新增的屬性
s-maxage:指定public的緩存,緩存設(shè)備有很多,不僅僅瀏覽器是緩存設(shè)備,在整個網(wǎng)絡(luò)中,可能會存在代理服務(wù)器,CDN屬于public緩存設(shè)備,因為可以多用戶訪問并讀取信息;什么是private緩存呢,指的是只是你個人訪問的設(shè)備,瀏覽器就屬于private緩存設(shè)備,eg:s-maxage=31536000;他的優(yōu)先級高于max-age,只能設(shè)定public的緩存設(shè)備
private
public
no-cache:錯誤理解:不使用緩存;no-cache指的是不管本地是否設(shè)置了max-age(即忽略本地瀏覽器端的緩存策略),都要向服務(wù)器端發(fā)送請求,由服務(wù)器端來判斷緩存情況
no-store:完全不使用任何的緩存策略,不管是服務(wù)器端還是瀏覽器端的
2.expires:Thu, 14 Mar 2019 17:29:17 GMT,這個屬性時HTTP1.0中配置,
緩存過期時間,用來指定資源到期時間,是服務(wù)器端具體的時間點。
告訴瀏覽器在過期時間前瀏覽器可以直接從瀏覽器緩存取數(shù)據(jù),而無需再次請求。
二.協(xié)商緩存階段基于客戶端和服務(wù)器端的協(xié)商緩存機(jī)制
1.last-modified
last-modified - response header
if-modified-since - request header
需要與cache-control共同使用,如果配置了max-age 且沒有過期,就不會使用last-modified;過期了之后,才會使用last-modified。
last-modified 缺點:
服務(wù)器端不能精確獲取 文件變更時間時
文件修改時間改了,文件內(nèi)容沒有變
以秒為單位,如果是ms內(nèi)修改了文件,就體現(xiàn)不出來
2.ETag
文檔內(nèi)容的hash值
ETag ---- response header
if-None-Match ----request header
etag優(yōu)先級高于last-modified
狀態(tài)碼解析
200(from cache): 瀏覽器端緩存,cache-control:max-age=315360000
或者expires起作用
304: 服務(wù)器端緩存,last-modified 或者 etag 起作用
200:瀏覽器端沒有緩存,或者服務(wù)器端緩存失效,或者用戶點擊了ctrl+F5 瀏覽器直接從服務(wù)器端下載最新的數(shù)據(jù)
注意:Chrome瀏覽器,手動點擊刷新按鈕都會 在請求頭中,添加 chche-control:max-age=0,這樣就肯定不會使用瀏覽器端的緩存!
更加詳細(xì),請參考:緩存詳解
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102667.html
整個過程大體描述如下,其中前兩個步驟是在本機(jī)完成的,后8個步驟涉及到真正的域名解析服務(wù)器: 瀏覽器會檢查緩存中有沒有這個域名對應(yīng)的解析過的IP地址,如果緩存中有,這個解析過程就結(jié)束。瀏覽器緩存域名也是有限制的,不僅瀏覽器緩存大小有限制,而且緩存的時間也有限制,通常情況下為幾分鐘到幾小時不等,域名被緩存的時間限制可以通過TTL屬性來設(shè)置。這個緩存時間太長和太短都不太好,如果時間太長,一旦域名被解析...
摘要:二目的是一個經(jīng)策略性部署的整體系統(tǒng),從技術(shù)上全面解決由于網(wǎng)絡(luò)帶寬小用戶訪問量大網(wǎng)點分布不均而產(chǎn)生的用戶訪問網(wǎng)站響應(yīng)速度慢的根本原因。 一、CDN全稱:??Content Delivery Network或Content Ddistribute Network,即內(nèi)容分發(fā)網(wǎng)絡(luò)。 ??二、目的:??CDN是一個經(jīng)策略性部署的整體系統(tǒng),從技術(shù)上全面解決由于網(wǎng)絡(luò)帶寬小、用戶訪問量大、網(wǎng)點分布不...
摘要:文件如果在本機(jī)中仍然無法完成域名的解析,則會真正請求域名服務(wù)器來解析這個域名了。若沒有命中,就直接到域名服務(wù)器請求解析。是國際頂級域名服務(wù)器,如等,全球只有臺左右。本地域名服務(wù)器再向上一步返回的服務(wù)器發(fā)送請求。 博文參考 http://www.hackdig.com/ http://www.hackdig.com/07/hack-47475.htm http://www.cnblogs...
摘要:文件如果在本機(jī)中仍然無法完成域名的解析,則會真正請求域名服務(wù)器來解析這個域名了。若沒有命中,就直接到域名服務(wù)器請求解析。是國際頂級域名服務(wù)器,如等,全球只有臺左右。本地域名服務(wù)器再向上一步返回的服務(wù)器發(fā)送請求。 博文參考 http://www.hackdig.com/ http://www.hackdig.com/07/hack-47475.htm http://www.cnblogs...
閱讀 2188·2023-04-25 19:06
閱讀 1388·2021-11-17 09:33
閱讀 1776·2019-08-30 15:53
閱讀 2599·2019-08-30 14:20
閱讀 3553·2019-08-29 12:58
閱讀 3552·2019-08-26 13:27
閱讀 512·2019-08-26 12:23
閱讀 493·2019-08-26 12:22