Sur une configuration de site Web multiple utilisant le vernis 5.1 sur le port 80, je ne veux pas mettre en cache tous les domaines. Cela se fait facilement dans vcl_recv.Varnish vcl_backend_response detect vcl_recv return (hash)
if (req.http.Host == "cache.this.domain.com") {
return(hash);
}
return(pass);
Maintenant, dans vcl_backend_response, je veux effectuer un traitement pour les domaines mis en cache.
Bien sûr, je peux faire si (bereq.http.Host == "cache.this.domain.com"), mais est-il un moyen de savoir si c'était un retour (hachage) ou un retour (passer) appelez vcl_recv depuis vcl_backend_response? Je pensais que cela pourrait avoir du sens, mais n'a pas pu trouver l'information.
Merci pour votre aide.
Je vais accepter votre réponse. J'espérais qu'il y aurait une façon plus élégante. Je voulais mettre en cache dans vcl_backend_response erreurs de backend, et seulement pour ceux qui ont entré par hachage pour redémarrer la requête en l'accrochant à un fail_be permanent pour essayer et pêcher à partir du cache. Merci. –