簡體   English   中英

沒有緩存控制標頭的清漆行為

[英]Varnish behavior for no cache-control header

我只是為我的團隊設置清漆。 我想知道:如果我的應用程序當前未發送任何cache-control標頭,那么清漆緩存的行為是什么。 它仍然緩存還是我們需要顯式發送具有max-age值的cache-control標頭,以便清漆可以緩存它。 我已將清漆設置為緩存200、404、400狀態碼響應。 謝謝。

這取決於許多因素:Varnish 不會在客戶端發送Coookie標頭的地方,或者服務器發送帶有Set-Cookie標頭的響應的地方, 緩存任何請求。 您也不能緩存POST請求,因為它們不是冪等的。

這就是說,如果請求沒有附帶餅干,是一個GET請求,清漆被設定為高速緩存默認120秒的請求。 這由varnish中的default_ttl設置確定,同樣僅適用於在varnish中可緩存的請求(即使未設置cache-control標頭)。

從Varnish文檔中:

Cache-Control標頭可以包含許多標頭。 Varnish對其進行評估,並尋找s-maxage和max-age。 如果找到,它將TTL設置為s-maxage的值。 如果找不到s-maxage,它將使用max-age。 如果都不存在,它將使用Expires標頭設置ttl。 如果這些標頭都不存在,它將使用默認的TTL

https://www.varnish-software.com/static/book/VCL_Basics.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM