瀏覽器快取

2022-03-28 04:38:16 字數 2475 閱讀 4663

瀏覽器快取:包括頁面html

快取和js

,css

等資源的快取。如下圖,瀏覽器快取是基於把頁面資訊儲存到使用者本地電腦硬碟裡。

1、快取的優勢

1)伺服器響應更快:因為請求從快取伺服器(離客戶端更近)而不是源伺服器被相應,這個過程耗時更少,讓伺服器看上去響應更快。

2)減少網路頻寬消耗:當副本被重用時會減低客戶端的頻寬消耗;客戶可以節省頻寬費用,控制頻寬的需求的增長並更易於管理。

2、快取工作原理

頁面快取狀態是由http header

決定的,乙個瀏覽器請求資訊,乙個是伺服器響應資訊。頁面快取狀態是由

決定的,乙個瀏覽器請求資訊,乙個是伺服器響應資訊。

工作原理圖:

從圖中我們可以看到原理主要分三步:

1、第一次請求:瀏覽器通過

的header

報頭,附帶

expires

,cache-control

,last-modified/etag

向伺服器請求,此時伺服器記錄第一次請求的

last-modified/etag                  

2、再次請求:當瀏覽器再次請求的時候,請求頭附帶

expires

,cache-control

,if-modified-since/etag

向伺服器請求

3、伺服器根據第一次記錄的

last-modified/etag

和再次請求的

if-modified-since/etag

304響應。常見流程如下圖所示:

與快取相關的http

擴充套件訊息頭

expires:設定頁面過期時間,格林威治時間

gmtcache-control:更細緻的控制快取的內容

last-modified:請求物件最後一次的修改時間 用來判斷快取是否過期 通常由檔案的時間資訊產生

etag:響應中資源的校驗值,在伺服器上某個時段是唯一標識的。

etag

是乙個可以 與

web資源關聯的記號(

token

),和last-modified

功能才不多,也是乙個識別符號,一般和

last-modified

一起使用,加強伺服器判斷的準確度。

date:伺服器的時間

if-modified-since:客戶端訪問的該資源最後一次修改的時間,用來和伺服器端的

last-modified

做比較。

if-none-match:客戶端訪問的該資源的檢驗值,同

etag

3、關於,css,js

,flash

的快取這個主要通過伺服器的配置來實現這個技術,如果使用apache

伺服器的話,可以使用mod_expires模組來實現:

編譯mod_expires

模組:cd  /root/httpd-2.2.3/modules/metadata

/usr/local/apache/bin/apxs -i -a -c mod_expires.c //編譯

編輯httpd.conf

配置:新增下面內容

解釋:第一句--

開啟服務

第二句--

預設時間是乙個月

在下面是關於各種型別的資源的快取時間。

快取 瀏覽器快取

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

瀏覽器快取

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

瀏覽器快取

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