瀏覽器快取

2022-02-09 06:02:48 字數 2068 閱讀 7813

1.快取

2.瀏覽器快取機制

3.瀏覽器快取作用

一.快取

快取就是資料交換的緩衝區(稱作cache)。當某一硬體要讀取資料時,會首先從快取中查詢需要的資料,如果找到了則直接執行,找不到的話則從記憶體中找。

web快取

web內容可以快取在客戶端(瀏覽器)、**伺服器以及伺服器端(server)。

使用者請求乙個頁面,**伺服器會快取這個頁面,其他使用者請求這個頁面的時候直接從**伺服器返回,從而減少對server的請求,也減輕server處理請求的

壓力。白話總結:快取就是把最常用的東西放在最容易取得的地方。

二.瀏覽器快取機制

1.html頁面的meta標籤

上述**設定網頁不被快取,"cache-control"是在http1.1出現的,相容http1.0 "pragma";

這種寫法只有部分瀏覽器可以支援,而且所有快取**伺服器都不支援,因為**伺服器不解析html內容本身。

2.http協議頭

cache-control與expires的作用一致,都是指明當前資源的有效期,cache-control優先順序高於expires

iis設定cache-control和expires

設定前:

設定max-age:

設定expires:

配置last-modified/etag的情況下,瀏覽器再次訪問統一url的資源,還是會傳送請求到伺服器詢問檔案是否已經修改,如果沒有,伺服器會只傳送乙個304回給

瀏覽器,告訴瀏覽器直接從自己本地的緩訪問資料;如果修改過那就整個資料重新發給瀏覽器。

cache-control/expires則不同,如果檢測到本地的快取還是有效的時間範圍內,瀏覽器直接使用本地副本,不會傳送任何請求。

etag(http1.1)解決的問題:

last-modified標註的最後修改只能精確到秒級,如果某些檔案在1秒鐘以內,被修改多次的話,它將不能準確標註檔案的新鮮度

如果某些檔案會被定期生成,當有時內容並沒有任何變化,但last-modified卻改變了,導致檔案沒法使用快取

有可能存在伺服器沒有準確獲取檔案修改時間,或者與**伺服器時間不一致等情形

etag是伺服器自動生成或者由開發者生成的對應資源在伺服器端的唯一識別符號,能夠更加準確的控制快取。last-modified與etag是可以一起使用的,伺服器會優先

驗證etag,一致的情況下,才會繼續比對last-modified,最後才決定是否返回304。

使用者在使用瀏覽器的時候,會有各種操作,比如輸入位址後回車,按f5重新整理等,這些行為會對快取有什麼影響呢?

無法被瀏覽器快取的請求:

http資訊頭中包含cache-control:no-cache,pragma:no-cache,或cache-control:max-age=0等告訴瀏覽器不用快取的請求

post請求無法被快取

http響應頭中不包含last-modified/etag,也不包含cache-control/expires的請求無法被快取

快取 瀏覽器快取

瀏覽器快取 brower caching 是瀏覽器在本地磁碟對使用者最近請求過的文件進行儲存,當訪問者再次訪問同一頁面時,瀏覽器就可以直接從本地磁碟載入文件 1 瀏覽器第一次請求時,會發出一組 http 頭,用來指導瀏覽器如何進行快取。伺服器規定乙個資源是否要進行快取,主要由響應頭中的expires...

瀏覽器快取

1.為什麼使用瀏覽器快取 以前了解的動態指令碼加速,或者動態內容快取之類,他們的原理都是避免伺服器重複計算,結果仍保留在伺服器端,這樣獲取資料還得從伺服器檢索然後傳送到使用者瀏覽器,如果我們把這些結果放在瀏覽器中,就省去了伺服器的查詢和網路傳輸,瀏覽器快取很好的實現了這個功能 2.瀏覽器快取存放在哪...

瀏覽器快取

瀏覽器快取知識歸納 瀏覽器快取是提公升網頁效能的一大利器,但是,也是一把雙刃劍。利用的好網頁的效能會有大幅度提公升,伺服器的壓力也會減小。利用的不好,也會遇到很多的問題。本文結合瀏覽器快取的知識,結合真實案例進行分析,希望對讀者有所幫助。瀏覽器快取分類 瀏覽器快取分為強快取和協商快取,瀏覽器載入乙個...