如何實現200 from cache?
01-16
(這是在HTML中標籤發起的http請求頭)(這是在腳本中發起的http請求頭)
後者可實現200 from cache,前者只能304,是因為前者的Cache-Control和If-Modified-Since,請教大家如何配置才能在請求頭中去掉上述兩項,如果是我基礎問題,請大家指出,我自己去學,謝謝大家。------------------------------------------------修改分割線--------------------------------------------------------------------------因為我把cache-control設置為public的緣故,故刷新時瀏覽器會默認不使用本地的緩存,而是請求伺服器,故返回了304,而腳本中的請求是不受刷新影響的,所以返回200
瀉藥……
你自己不說了 Cache-Control 的緣故么……
它的值被 max-age=0 了。不走瀏覽器緩存,去server查詢了啊。If-Modified-Since 就生效了,server查完了說沒過期,返回 304.
所以不是去掉 Cache-Control 和 If-Modified-Since 啊。
是要配置 Cache-Control 值 max-age 大於 0 啊。看你問的是 Express 分類里的,那就去看看它的 api 文檔好了……
(都說偶不會 node 什麼的了…… 哎……還得去翻下它的api……)
比如 :express.static(root, [options])
options 中可設置名為 maxAge 的 key,單位是毫秒,默認值是 0你設置下大於 0 的值不就好了……後端用session的話max-age=0不可避。
一般是用另一個虛擬主機或是用另一台伺服器存靜態資源,然後單獨設置緩存過期。
為啥配了緩存不是 200 (from cache) ,常常還是 304 Not Modified?沒準是因為 ETag 干擾了緩存效果:http://www.bokeyy.com/post/200-ok-from-cache-vs-304-not-modified.html
推薦閱讀:
※「 http:// 」 中為何有兩根斜杠?
※精神力量有多强大?
※合併 HTTP 請求是否真的有意義?
※國內有哪些互聯網公司已經開始使用 HTTP/2 了?
※如何使用Nginx轉發非80埠的非HTTP請求?