亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > nginx設置資源緩存實戰詳解

nginx設置資源緩存實戰詳解

熱門標簽:AI電銷機器人 源碼 蘭州ai電銷機器人招商 新科美甲店地圖標注 外呼系統打哪顯哪 江西外呼系統 湖北ai智能電銷機器人 新邵電銷機器人企業 高德地圖標注論壇 北海市地圖標注app

一直很想學習緩存這一塊兒的東西,畢竟前端性能優化緩存在其中占了很大一部分作用。緩存分為兩種:強制緩存和協商緩存。看過很多文章講它們之間的區別,但是沒有實戰過只知道其意義卻不知道怎樣去設置,沒有實戰過也導致記憶總是很模糊,實踐才是最好的老師!記錄一下我使用nginx服務器學習緩存的過程。

初探

首先我在 nginx 的根目錄下新建了一個 index.html 文件以及 index.js 文件。此時 nginx 的配置文件是長這個樣子的:

server {
 listen  8080;
 server_name localhost;
 location / {
  root /Volumes/myFile/nginx_root; 
  index index.html index.htm;
 }
}

然后我們瀏覽器訪問 localhost:8080。打開控制臺,發現里面有兩條請求:

可以看到第一次訪問,兩條請求的狀態碼都是 200。我們點開其中一條請求看看響應頭信息:

可以看到,響應頭中給我們攜帶了 Etag 以及 Last-Modified 信息。這就是協商緩存所使用的字段嘛??磥?nginx 已經默認給我們使用了緩存。那我們在不修改 html文件以及js文件的基礎上再次去刷新頁面驗證一下,命中協商緩存的話,狀態碼應該給我們返回 304 Not Modified 。我刷新了幾次去觀察http請求的狀態碼。html文件每次都是返回的 304。但是 js 文件在最初是 304 后面卻變成了 200 OK (from memory cache) 。也就是說每一次html文件都是命中了協商緩存,而js文件都是命中了強緩存(強緩存的優先級是高于協商緩存的)。為什么會出現這樣的情況呢,我百度一下:

為什么有的緩存是 200 OK (from cache),有的緩存是 304 Not Modified 呢?很簡單,看是否移除了 Entity Tag。移除了,就總是 200 OK (from cache)。沒有移除,就兩者會交替出現。

那么,兩者觸發的時機有什么區別呢?200 OK (from cache) 是直接點擊鏈接訪問,輸入網址按回車訪問也能觸發;而 304 Not Modified 是刷新頁面時觸發,或是設置了強緩存、但 Entity Tags 沒有移除時觸發。

對照我的例子,我是這樣理解的: index.html 文件刷新頁面命中協商緩存返回了 304,而 js 文件是在 index.html 文件中鏈接引入的,所以命中強緩存 200 OK (from cache) 。為了驗證我的想法,我用在地址欄直接訪問了 index.js 文件。地址欄鍵入:localhost:8080/index.js,此時的確是返回了 304 給我了,在來看一下此時的請求頭:

可以看到此時 Cache-Control 給的是max-age=0;然后也攜帶上了協商緩存的相關參數??磥碓跒g覽器是刷新操作的時候就會攜帶上 Cache-Control:max-age=0 以此來避免命中強緩存。

nginx禁用強緩存

在試試 nginx 禁用強緩存之后會發生什么效果。修改 nginx 配置文件:

server {
 listen  8080;
 server_name localhost;
 location / {
  root /Volumes/myFile/nginx_root; 
  index index.html index.htm;
  add_header Cache-Control no-cache;
  # 為 public可以被任何對象緩存,private只能針對個人用戶,而不能被代理服務器緩存
  add_header Cache-Control private;
 }
}

修改完 nginx 配置文件之后我們重啟一下 nginx 服務器。此時在訪問 localhost:8080

可以看到,此時 html 文件和 js文件都是 304 都是命中協商緩存了。

Cache-Control: no-store

禁止一切緩存(這個才是響應不被緩存的意思)。緩存通常會像非緩存代理服務器一樣,向客戶端轉發一條 no-store 響應,然后刪除對象。

Cache-Control:no-cache

強制客戶端直接向服務器發送請求,也就是說每次請求都必須向服務器發送。服務器接收到請求,然后判斷資源是否變更,是則返回新內容,否則返回304,未變更。這個很容易讓人產生誤解,使人誤以為是響應不被緩存。實際上Cache-Control: no-cache是會被緩存的,只不過每次在向客戶端(瀏覽器)提供響應數據時,緩存都要向服務器評估緩存響應的有效性。

其實將 Cache-Control 設置為 no-store 才是真正的不被緩存的意思,那在修改一下 nginx 文件將 Cache-Control 設置為 no-store 看看會發生什么。此時再次刷新瀏覽器。

可以看到,修改完 nginx 的配置文件之后,除了第一次是304(這次訪問瀏覽器才剛剛接收到 no-store的信息,請求頭上還是攜帶了緩存相關信息) 外,剩下的幾次刷新頁面都是返回 200了。既沒有命中強緩存、也沒有命中協商緩存。在看一下 index.js 文件的 http 頭信息。

這里的圖我沒有截完整,其實響應頭中還包含了 Cache-Control: no-store 。可以看到,在 Cache-Control: no-store 的加持下,即使在響應頭中服務請返回了協商緩存的參數,但是在瀏覽器在請求資源的時候,并沒有帶上緩存相關的參數了,所以,現在沒有緩存了,既不會命中強緩存,也不會命中協商緩存,每一次http請求的資源都是從服務器上返回的。

結語

這次的探索到現在就結束了,其實就是我一次學習的記錄吧。實踐了一次之后確實對緩存有了更清晰的理解和認知,果真實踐出真知。后續打算還會記錄一篇在現在前端使用 React.js 或者 Vue.js 等框架打包之后前端資源如何利用 nginx 做部署還有配置相關緩存的文章,到時候在看有沒有記錄下來的意義把。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:大理 南陽 黃石 自貢 黔東 池州 海南 阿克蘇

巨人網絡通訊聲明:本文標題《nginx設置資源緩存實戰詳解》,本文關鍵詞  nginx,設置,資源,緩存,實戰,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《nginx設置資源緩存實戰詳解》相關的同類信息!
  • 本頁收集關于nginx設置資源緩存實戰詳解的相關信息資訊供網民參考!
  • 推薦文章
    国产成人女人在线视频观看 | 国产成+人+综合+亚洲不卡| 成人影院一区二区三区| 高清一级片| 日日日夜夜操| 日韩在线观看视频网站| a级黄色毛片免费播放视频| 久久久久久久免费视频| a级毛片免费全部播放| 日韩男人天堂| 九九久久99综合一区二区| 精品久久久久久中文字幕一区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 夜夜操天天爽| 一级片片| 亚洲 激情| 欧美大片毛片aaa免费看| 欧美1区| 日韩男人天堂| 精品视频在线观看一区二区| 黄色免费三级| 日韩男人天堂| 91麻豆国产| 久久国产精品自线拍免费| 成人a级高清视频在线观看| 黄色福利| 成人av在线播放| 国产91视频网| 99色视频| 欧美国产日韩一区二区三区| 亚洲精品久久玖玖玖玖| 麻豆系列国产剧在线观看| 免费毛片播放| 亚洲天堂免费| 九九干| 四虎影视库国产精品一区| 日日夜人人澡人人澡人人看免| 日本特黄特黄aaaaa大片| 午夜在线观看视频免费 成人| 日韩专区在线播放| 国产综合成人观看在线| 久久久久久久免费视频| 日韩一级精品视频在线观看| 国产视频久久久久| 超级乱淫伦动漫| 日韩av成人| 天天做人人爱夜夜爽2020毛片| 精品久久久久久中文字幕一区| 国产高清视频免费| 国产一区二区精品| 一级毛片视频播放| 成人在免费观看视频国产| 国产网站麻豆精品视频| 精品在线观看一区| 国产伦精品一区二区三区在线观看| 夜夜操天天爽| 精品久久久久久中文| 久久精品道一区二区三区| 成人影院久久久久久影院| 二级片在线观看| 亚洲精品中文一区不卡| 国产a毛片| 国产韩国精品一区二区三区| 日韩男人天堂| 四虎影视库| 麻豆网站在线免费观看| 可以免费看污视频的网站| 免费国产在线观看不卡| 久久国产一区二区| 国产原创中文字幕| 国产福利免费视频| 国产不卡在线观看视频| 国产成人精品综合在线| 国产精品1024在线永久免费| 国产麻豆精品免费密入口| 国产网站麻豆精品视频| 美女免费毛片| 日韩欧美一二三区| 中文字幕一区二区三区精彩视频 | 色综合久久天天综线观看| 免费毛片播放| 国产精品123| 亚欧视频在线| 青青青草影院 | 四虎论坛| 韩国三级视频网站| 999精品在线| 亚欧乱色一区二区三区| 天堂网中文字幕| 超级乱淫黄漫画免费| 高清一级淫片a级中文字幕| 亚欧视频在线| 久久国产影院| 精品视频一区二区三区| 99久久精品国产国产毛片| 毛片电影网| 国产网站免费视频| 精品国产一区二区三区久久久狼| 国产不卡高清在线观看视频| 国产一级强片在线观看| 亚洲天堂一区二区三区四区| 欧美另类videosbestsex| 国产高清在线精品一区二区| 日本特黄特黄aaaaa大片| 日日日夜夜操| 久久精品大片| 四虎影视久久久| 日韩男人天堂| 日韩专区亚洲综合久久| 欧美激情影院| 久久久久久久久综合影视网| 国产精品免费精品自在线观看| 精品国产香蕉在线播出| 国产福利免费观看| 精品国产一区二区三区久久久狼| 二级特黄绝大片免费视频大片| 久久久久久久网| 九九久久国产精品| 日本免费乱人伦在线观看| 欧美国产日韩久久久| 精品视频在线看| 九九九网站| 精品国产亚一区二区三区| 91麻豆精品国产片在线观看| 成人av在线播放| 99色视频在线观看| 免费一级生活片| 日韩专区亚洲综合久久| 四虎久久影院| 国产极品精频在线观看| 美女免费精品高清毛片在线视 | 99色视频| 国产国语在线播放视频| 国产网站免费观看| 欧美大片aaaa一级毛片| 99热精品在线| 99久久网站| 日韩专区第一页| 美女免费黄网站| 成人a级高清视频在线观看| 天天色成人| 97视频免费在线| 二级片在线观看| 久久99中文字幕久久| 欧美a级片免费看| 你懂的福利视频| 欧美a级大片| 成人影视在线观看| 黄色短视频网站| 在线观看成人网 | 国产精品自拍亚洲| 国产国语在线播放视频| 日韩综合| 国产a视频| 免费毛片基地| 欧美激情一区二区三区在线 | 国产麻豆精品高清在线播放| 日本特黄特黄aaaaa大片| 一本伊大人香蕉高清在线观看| 国产不卡在线看| 免费毛片基地| 国产韩国精品一区二区三区| 久久成人综合网| 精品国产三级a∨在线观看| 四虎论坛| 成人免费福利片在线观看| 国产一级生活片| 免费一级片在线观看| 九九免费高清在线观看视频| 国产精品自拍在线| 天天做日日干| 国产成人精品综合久久久| 国产精品自拍一区| 久久久久久久免费视频| 九九久久99| 日韩欧美一及在线播放| 人人干人人草| 九九九网站| 亚洲精品永久一区| 国产一区二区精品在线观看| 中文字幕Aⅴ资源网| 青青久在线视频| 日韩在线观看网站| 成人高清视频在线观看| 精品久久久久久中文| 韩国毛片免费大片| 日本特黄特色aa大片免费| 精品视频一区二区三区| 亚洲 男人 天堂| 日韩一级黄色片| 香蕉视频一级| 四虎影视库国产精品一区| 台湾毛片| 天天做日日干| 色综合久久天天综线观看| 国产成人啪精品| 精品在线观看一区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产网站麻豆精品视频| 精品国产一区二区三区久|