網站是wordpress,要求標頭裡的Cache-Control是no-cache,回應標頭裡的是我在nginx裡設定的max-age=259200,那麼瀏覽器到底緩衝了沒有。。。
Request Headersview sourceAccept:*/*Accept-Encoding:gzip, deflate, sdchAccept-Language:zh-CN,zh;q=0.8Cache-Control:no-cacheConnection:keep-aliveCookie:CNZZDATA1254790698=1245005062-1429681029-%7C1429681029Host:yuanzi.mePragma:no-cacheReferer:http://yuanzi.me/User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36Response Headersview sourceAccept-Ranges:bytesCache-Control:max-age=259200Connection:keep-aliveContent-Length:100922Content-Type:application/javascriptDate:Wed, 22 Apr 2015 06:13:34 GMTETag:"55371597-18a3a"Expires:Sat, 25 Apr 2015 06:13:34 GMTLast-Modified:Wed, 22 Apr 2015 03:29:27 GMTServer:nginx/1.6.2
回複討論(解決方案)
要求標頭裡的Cache-Control是no-cache,是瀏覽器通知伺服器:本地沒有快取資料
回應標頭中的 Cache-Control:max-age=259200 是通知瀏覽器:259200 秒之內別來煩我,自己從緩衝區中重新整理
要求標頭裡的Cache-Control是no-cache,是瀏覽器通知伺服器:本地沒有快取資料
回應標頭中的 Cache-Control:max-age=259200 是通知瀏覽器:259200 秒之內別來煩我,自己從緩衝區中重新整理
徐版主好~
還是疑惑,既然本地沒有快取資料,怎麼從緩衝區重新整理呢??
我在nginx設定的expires 3d;到底有沒有緩衝到瀏覽器呢??
我以為我設定了expires 3d; 要求標頭裡的cache-control也該是259200。。
如果回應標頭中有 Cache-Control=no-cache 那麼瀏覽器是不會緩衝的
但你的回應標頭並沒有,所以應該是有緩衝的。
不過即使有緩衝,也不一定被瀏覽器使用。因為瀏覽器還有其他設定
同時並不是與緩衝相關的頭都會被瀏覽器接受,協議只是建議,並不一個定非要執行
如果回應標頭中有 Cache-Control=no-cache 那麼瀏覽器是不會緩衝的
但你的回應標頭並沒有,所以應該是有緩衝的。
不過即使有緩衝,也不一定被瀏覽器使用。因為瀏覽器還有其他設定
同時並不是與緩衝相關的頭都會被瀏覽器接受,協議只是建議,並不一個定非要執行
謝謝徐版主~