<div dir="ltr"><div><div><div><div><div><div><div>Hi Everyone.<br><br></div>I have a question about ESI includes in Varnish 3. I have 2 types of cache which stored in Varnish:<br></div>1) page cache,<br></div>2) blocks cache.<br>
<br></div>Every page contains several blocks. Pages are generated by script index.php and have TTL 15 minutes (set by HTTP header max-age). Blocks are generated by script blocks.php and have TTL from 1 to 5 minutes. Blocks are included to page by ESI instructions like:<br>
<br></div><esi:include src="/blocks.php?block=some-name" /><br><br></div>I've read manual on <a href="http://varnish-cache.org">varnish-cache.org</a> (<a href="https://www.varnish-cache.org/docs/3.0/tutorial/esi.html">https://www.varnish-cache.org/docs/3.0/tutorial/esi.html</a>) and different tutorials, but I've not found: is it possible to handle ESI instructions on every request to cached page? In cause of page has TTL more than blocks, blocks are updated only when page cache flushed.<br>
<br></div>As far as I understand from this presentation: <a href="http://www.slideshare.net/neorey/varnish-the-high-performance-valhalla-9321198">http://www.slideshare.net/neorey/varnish-the-high-performance-valhalla-9321198</a> (slides 33-34) ESI-includes can be handle only if request served from backend, because only in this case vcl_fetch called, am I right?<br clear="all">
<div><div><div><div><div><div><div><div><br>Thank you.<br>Roman Arkharov<br></div><div><a href="mailto:arkharov@gmail.com">arkharov@gmail.com</a></div></div></div></div></div></div></div></div></div>