Conditional GETs

Poul-Henning Kamp phk at
Fri Jul 27 06:55:58 CEST 2007

In message <E7EB8D13-D7B6-42CD-89F0-524B819B6527 at>, Ricardo N
ewbery writes:

>Vary support without ETag concerns me a bit.  See https:// 

Vary will respect any header listed.

>How about an "INM without IMS" request?  Still served out of cache I  
>suppose.  Is it possible to modify this behavior via vcl?

Everything is served out of cache except Cookies and Authentication.

IMS is only special in that it does not return the body unless necessary.

INM is ignored and hence the body is always returned.

>Okay.  If I understand correctly, since Varnish doesn't respect cache- 
>control from clients, then backend-generated cache-control like "must- 
>revalidate",  "proxy-revalidate", and "no-cache" are unnecessary  
>since the "max-age" and "s-maxage" response cache-controls are  
>sufficient -- at least as far as the Varnish heuristic is concerned.   

You may still want to generate the headers for the clients to see.

>Does Varnish respect "private" and "no-store" in the response?

No.  Varnish is considered part of the web-server, and thus these
don't apply to it (unless people implement them in VCL)

Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

More information about the varnish-misc mailing list