Cache
網站未遵循 Cloudflare 的 Pagerules
我正在使用 Cloudflare 的頁面規則將我網站上的所有內容(ajax.php 除外)記憶體至少 5 天(圖像、css、js 記憶體 30 天)。
雖然所有網頁內容都設置為記憶體 5 天,但每當我測試它時,首先我當然會得到 Cloudflare MISS 狀態,然後我會得到 Cloudflare HIT 狀態,但過期響應標頭似乎只設置在未來 1 小時.
為什麼網站的記憶體不遵循頁面規則?
沒關係。對於 HTTP/1.1 客戶端,標
Cache-Control: max-age=...
頭優先於標頭。Expires
請參閱MDN 的 Web/HTTP/Headers/Expires。引用RFC2616:
如果響應同時包含 Expires 標頭和 max-age 指令,則 max-age 指令將覆蓋 Expires 標頭,即使 Expires 標頭更具限制性
此外,Cloudflare只會修改
Expires
或Cache-Control
如果:
- 來自源 Web 伺服器的標頭值
Cache-Control
小於Browser Cache TTL Cloudflare 設置,或者- 源 Web 伺服器不發送一個
Cache-Control
或一個Expires
標頭。您的網路伺服器可能首先發送不同
Cache-Control
的Expires
標頭值。