Mar 052012
 

Avec varnish, par défaut quand vous appelez la routine pass,

return(pass);

votre requête sera envoyée directement au backend sans vérifier le cache mais si la réponse est « cachable » http://blog.jeremm.fr/?p=190, Varnish la sauvegardera dans son cache.

Bien sûr cela ne sert souvent à rien car la prochaine requête passera encore par le routine pass, et l’objet dans le cache ne sera pas utilisée.
Mais avec une configuration plus complexe, l’objet en cache pourrait être utilisé.

Pour être sûr que les objets passant par la routine pass ne soit pas cachée, ajoutez :

sub vcl_pass {
        set req.http.X-marker = "pass" ;
}

et dans le vcl_fetch :

if (req.http.X-marker == "pass" ) {
        unset req.http.X-marker;
        set beresp.ttl = 0s ;
}

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

(required)

(required)

Spam protection by WP Captcha-Free