0
我在頁面上有ESI部分。我希望不同於整個頁面的ESI的TTL。 我有兩個疑問清漆如何爲ESI設置不同的TTL以及如何驗證相同
我在哪裏指定頁面上各種的ESI的TTL配置?
如何驗證每個ESI的清漆緩存命中或未命中?
請給出您的意見。
我在頁面上有ESI部分。我希望不同於整個頁面的ESI的TTL。 我有兩個疑問清漆如何爲ESI設置不同的TTL以及如何驗證相同
我在哪裏指定頁面上各種的ESI的TTL配置?
如何驗證每個ESI的清漆緩存命中或未命中?
請給出您的意見。
最簡單的拆分方法是定義一個url模式來匹配頁面和url patten以匹配ESI中包含的片段。例如使用前綴或後綴。 喜歡的東西:
sub vcl_fetch { if (req.url ~ "^/includes/"){ set beresp.ttl = 120 s; } else { set beresp.ttl = 24 h; } }
您可以在服務器上運行varnishlog和重建什麼漆一樣。否則,請檢查目標服務器上的access.log。
嗨鮑里斯,感謝您的回覆。我使用的是您提供的相同代碼。但是,即使在ttl過期後,頁面也不會從後端刷新! –
ESI響應是否可以包含一個可以爲esi請求設置TTL的標頭?或者,TTL可以設置在標籤中嗎? –
Wouter
ESI響應可以設置標題,並且您可以在beresp.http中讀取該標題。變量。有了這個,你可以設置ttl,如果你想要的話。 –