av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

nginx - 瀏覽器是如何處理服務器返回的expires和Cache-Control參數的

瀏覽:87日期:2024-06-22 18:33:45

問題描述

nginx上配置了

expires 1d;

請求相應資源時返回

Cache-Control:max-age=86400Expires:Thu, 11 Aug 2016 12:16:43 GMT

按照我的理解,該資源應該在瀏覽器緩存保持一天,在緩存期內第二次刷新時應該不需要發送請求而直接返回

Status Code:200 OK (from cache)

而事實上,每次請求服務器會通過etag/Last-Modified對比來處理返回結果,如果request header 返回的If-Modified-Since/If-None-Match與現有的etag/Last-Modified不匹配,返回200刷新資源,如果匹配,返回304。

那么Expires/ Cache-Control 存在的意義是什么

8-12號更新

在nginx上進行如下設置

add_header Last-Modified ''; expires 5d; etag off;

關閉etag,關閉last-modifed;僅僅開啟5天的緩存時間。response headers返回如下;

Accept-Ranges:bytesCache-Control:max-age=432000Connection:keep-aliveContent-Length:826Content-Type:text/cssDate:Fri, 12 Aug 2016 05:52:24 GMTExpires:Wed, 17 Aug 2016 05:52:24 GMTServer:nginx/1.4.1

請求該css文件時,瀏覽器緩存失效,服務器每次返回 200,并且在body中返回css;看起來expires 這個參數并沒有用

問題解答

回答1:

已經解決了,我理解的沒錯,Expires的確是用來控制緩存過期時間的,沒有過期時返回200 (fromcache)但重點是我的訪問方式不對,Expires/Cache-Control對f5刷新無效。正確的方式是地址欄確認直接訪問。nginx - 瀏覽器是如何處理服務器返回的expires和Cache-Control參數的

參考博客http://www.cnblogs.com/skynet...

回答2:

你應該是兩個功能都開了,Last-Modified會優先被看,Nginx應該是默認開Last-Modified,或者我記錯了

一般情況下,靜態資源如圖片、CSS用Expires/ Cache-Control,因為改動非常少。而改動較多的可以用Last-Modified,確保瀏覽器拿到最新版本

回答3:

樓主是在nginx.conf的那一塊配置的。我配置expires沒有生效。但是gzip壓縮的生效了...

相關文章:
主站蜘蛛池模板: 精品在线一区 | 成人aaa视频 | 一区二区三区在线看 | 日韩中文在线观看 | 欧美精品二区 | 中文字幕一区二区在线观看 | www.亚洲视频 | 一区二区三区在线看 | 欧美精品网站 | 精品91久久 | 国产中文字幕在线 | 欧美日韩福利视频 | 国产福利小视频 | 亚洲成人观看 | 日韩aⅴ视频 | 激情av免费看 | 日韩中文字幕在线视频观看 | 国产亚洲精品综合一区 | 一级在线观看 | 亚洲一区免费 | 亚洲成人中文字幕 | 涩涩视频在线看 | 亚洲国产成人精品久久 | 91高清视频 | 亚洲欧美综合精品久久成人 | a级免费视频 | 91久久精品一区二区三区 | 精品久久久久久久久久久久久久久久久 | 久久69精品久久久久久久电影好 | 国产日韩欧美中文 | 色综久久 | 欧美精品一区二区三区在线四季 | 久久精品女人天堂av | 一级片在线观看 | 亚洲一区二区av在线 | 一区二区电影网 | xx视频在线 | 国产精品久久久久久中文字 | 免费一区二区三区 | 在线中文视频 | 国产高清在线观看 |