當(dāng)前位置:首頁 > IT技術(shù) > Web編程 > 正文

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)
2021-09-29 14:46:45

author:咔咔

瀏覽器緩存:

HTTP協(xié)議定義的緩存機(jī)制(如:Expires;Cache-control等)

瀏覽器無緩存:

請求步驟

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_服務(wù)端

瀏覽器有緩存:

請求步驟

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_數(shù)據(jù)更新_02

檢驗過期機(jī)制:

?

Expires是在http1.0版本,Cache-Control(max-age)是在http1.1版本

max-age過期時間

Etag跟last-Modified是本地緩存失效后,在服務(wù)端檢驗的倆個參數(shù),last-Modified后跟的具體時間,Etag后跟的是一個報文,這個報文在本地跟服務(wù)端都會產(chǎn)生一份

由于last-Modified的時間只精確到秒,所以有時會存在在秒內(nèi)的數(shù)據(jù)更新,這個時候就需要Etag這個參數(shù)

這倆個參數(shù)都是會在本地跟服務(wù)端同時產(chǎn)生,當(dāng)用戶在次請求的時候,會拿著倆個參數(shù)做對比,如果相同會直接返回,并且狀態(tài)是304

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_服務(wù)端_03

實現(xiàn)過程

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_Nginx_04

場景演示:

// 配置語法

添加Cache-Control、Expires頭

Syntax:expires [modifies] time;

expires epoch | max | off

Default:expires off;

Context:http,sercver,localtion,if in location

我們在服務(wù)器定義了一個kaka.html文件

現(xiàn)在訪問一下

我們可以看到訪問狀態(tài)是200

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_緩存_05

下來我們配置一下nginx.conf

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_Nginx_06

再來測試

這個時候就已經(jīng)成功了

【Nginx】第十一節(jié) 應(yīng)用場景之靜態(tài)資源WEB服務(wù)之瀏覽器緩存及實現(xiàn)_Nginx_07

本文摘自 :https://blog.51cto.com/k

開通會員,享受整站包年服務(wù)立即開通 >