vcl_fetchで下記のようにすることで、Varnishでキャッシュ期間を5分に設定することが可能です。
尚、vcl_fetchはオリジンからコンテンツを取得した後に呼ばれる関数です。

sub vcl_fetch {
    unset beresp.http.expires;
    set beresp.http.cache-control = "max-age=300";
    set beresp.ttl = 300s;
}

上記では、まずオリジンからのExpiresヘッダを削除し、Cache-Controlヘッダを300秒(5分)にし、最後に、キャッシュ自体の期限(TTL)も300秒(5分)にしています。

以上で、5分間はクライアントもしくはVarnishのキャッシュが利用されるようになるはずです。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら