濮阳杆衣贸易有限公司

主頁 > 知識庫 > Nginx緩存設置案例詳解

Nginx緩存設置案例詳解

熱門標簽:寧夏房產智能外呼系統(tǒng)要多少錢 威海人工外呼系統(tǒng)供應商 撫順移動400電話申請 烏海智能電話機器人 做外呼系統(tǒng)的公司違法嗎 在百度地圖標注車輛 400電話申請方案 貴陽教育行業(yè)電話外呼系統(tǒng) 藍點外呼系統(tǒng)

在開發(fā)調試web的時候,經常會碰到因瀏覽器緩存(cache)而經常要去清空緩存或者強制刷新來測試的煩惱,提供下apache不緩存配置和nginx不緩存配置的設置。在常用的緩存設置里面有兩種方式,都是使用add_header來設置:分別為Cache-Control和Pragma。

nginx:
location ~ .*\.(css|js|swf|php|htm|html )$ {
add_header Cache-Control no-store;add_header Pragma no-cache;
}

對于站點中不經常修改的靜態(tài)內容(如圖片,JS,CSS),可以在服務器中設置expires過期時間,控制瀏覽器緩存,達到有效減小帶寬流量,降低服務器壓力的目的。

以Nginx服務器為例:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
#過期時間為30天,
#圖片文件不怎么更新,過期可以設大一點,
#如果頻繁更新,則可以設置得小一點。
expires 30d;
}
location ~ .*\.(js|css)$ {
expires 10d;
}

背景】:Expires是Web服務器響應消息頭字段,在響應http請求時告訴瀏覽器在過期時間前瀏覽器可以直接從瀏覽器緩存取數(shù)據,而無需再次請求。

相關資料

1、Cache-control策略

Cache-Control與Expires的作用一致,都是指明當前資源的有效期,控制瀏覽器是否直接從瀏覽器緩存取數(shù)據還是重新發(fā)請求到服務器取數(shù)據。只不過Cache-Control的選擇更多,設置更細致,如果同時設置的話,其優(yōu)先級高于Expires。

http協(xié)議頭Cache-Control

值可以是public、private、no-cache、no- store、no-transform、must-revalidate、proxy-revalidate、max-age

各個消息中的指令含義如下:

  • Public指示響應可被任何緩存區(qū)緩存。
  • Private指示對于單個用戶的整個或部分響應消息,不能被共享緩存處理。這允許服務器僅僅描述當用戶的部分響應消息,此響應消息對于其他用戶的請求無效。
  • no-cache指示請求或響應消息不能緩存
  • no-store用于防止重要的信息被無意的發(fā)布。在請求消息中發(fā)送將使得請求和響應消息都不使用緩存。
  • max-age指示客戶機可以接收生存期不大于指定時間(以秒為單位)的響應。
  • min-fresh指示客戶機可以接收響應時間小于當前時間加上指定時間的響應。
  • max-stale指示客戶機可以接收超出超時期間的響應消息。如果指定max-stale消息的值,那么客戶機可以接收超出超時期指定值之內的響應消息。

Last-Modified/If-Modified-Since

  • Last-Modified/If-Modified-Since要配合Cache-Control使用。
  • Last-Modified:標示這個響應資源的最后修改時間。web服務器在響應請求時,告訴瀏覽器資源的最后修改時間。
  • If-Modified-Since:當資源過期時(使用Cache-Control標識的max-age),發(fā)現(xiàn)資源具有Last-Modified聲明,則再次向web服務器請求時帶上頭 If-Modified-Since,表示請求時間。web服務器收到請求后發(fā)現(xiàn)有頭If-Modified-Since 則與被請求資源的最后修改時間進行比對。若最后修改時間較新,說明資源又被改動過,則響應整片資源內容(寫在響應消息包體內),HTTP 200;若最后修改時間較舊,說明資源無新修改,則響應HTTP 304 (無需包體,節(jié)省瀏覽),告知瀏覽器繼續(xù)使用所保存的cache。

其最終達到的就是等效于設置這三類html緩存技術:

<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate"/> 
<meta http-equiv="expires" content="0"/>

到此這篇關于Nginx緩存設置案例詳解的文章就介紹到這了,更多相關Nginx緩存設置內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:銅川 那曲 慶陽 泰州 松原 周口 蕪湖 朝陽

巨人網絡通訊聲明:本文標題《Nginx緩存設置案例詳解》,本文關鍵詞  Nginx,緩存,設置,案例,詳解,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Nginx緩存設置案例詳解》相關的同類信息!
  • 本頁收集關于Nginx緩存設置案例詳解的相關信息資訊供網民參考!
  • 推薦文章
    安溪县| 方正县| 宜昌市| 黄陵县| 平顺县| 天等县| 横峰县| 乌审旗| 舟曲县| 渝北区| 长白| 平阳县| 旬邑县| 铜鼓县| 江陵县| 东城区| 营山县| 巩留县| 缙云县| 雅安市| 晴隆县| 道孚县| 三台县| 都江堰市| 九龙城区| 盖州市| 沧州市| 漳州市| 延寿县| 鹤岗市| 扶余县| 永平县| 理塘县| 昆山市| 昌江| 五家渠市| 鹤壁市| 巫山县| 铜川市| 庆阳市| 和静县|