以下の記事でもチラッと書いたのですがVarnishの現バージョンではESIのTTL指定がesi:includeタグからできません
単純に考えるのであればvcl_fetchでそれぞれのURLで指定すればいいとも言えるのですが
ESIの利点を多少損なっている感もします
(個人的にはデザイナ側がこのパーツは10分キャッシュしてもユーザに影響しないよ!とか設定できるのが利点と思ってる)
じゃぁどうすればいいのでしょうか
あまりスマートではないですが解決方法があります
例えばdocument root直下にあるhello.htmlを
ESIでincludeしたい場合で10秒のTTLを指定する時に
<esi:include src="/esi/t/10s/hello.html"></esi:include>
こんな感じの記述でできるようになります
Continue reading »