if (req.url ~ "do_ajax.php" && req.request == "GET") {
return (lookup);
}
Eu coloquei esta linha dentro da configuração do varnish.vcl, mas recebo este cabeçalho no cabeçalho de resposta:
no-cache, must-revalidate, max-age=0
Também tentei com:
if (req.url ~ "do_ajax.php" && req.request == "GET") {
return (hash);
}
Mas o verniz falha ao reiniciar, a menos que eu remova o retorno (hash).
Agora, estou me perguntando se há uma linha no arquivo de configuração do verniz que força todas as chamadas ajax a não aceitarem o cache, e a segunda coisa que não entendo é por que estou recebendo isso no cabeçalho de resposta, não deveria ser o cliente que envia isso no cabeçalho da solicitação? Por que o servidor está retornando isso?
Como mencionado em um dos outros posts que você fez: você provavelmente está usando uma versão desatualizada do Varnish. Isso pode explicar por que a sintaxe da VCL não está funcionando.
Certifique-se de estar no Varnish 6 ou Varnish 7. Veja https://www.varnish-software.com/developers/downloads/#linux-packages para uma lista de procedimentos de instalação dependendo da distribuição Linux que você está usando.
Também forneci uma solução VCL em um dos outros posts que você fez.