2017-06-26 4 views
1

Ich habe verstanden, wenn jemand return (pass) verwendet, weil den Inhalt nicht zwischenspeichern und die Anfrage an das Backend übergeben soll. Also, wenn das wirklich so ist, warum bekomme ich HIT anstelle von MISS. Hier ES mein vcl:return (pass) HIT oder MISS

sub vcl_recv{ 
if (req.method == "GET" && req.method == "HEAD"){ 
      return (pass); 
    } 

}

Hier ist ein Teil von varnishlog:

  • VCL_call RECV
  • VCL_return Hash
  • VCL_call HASH
  • VCL_return Lookup
  • Hit 20
  • VCL_call HIT
  • VCL_return liefern

Danke.

Antwort

1

Ich habe den Fehler gefunden. Ich war Putting:

if (req.method == "GET" && req.method == "HEAD") { 
      return (pass); 
    } 

Anstelle von:

if (req.method == "GET" || req.method == "HEAD") { 
      return (pass); 
    } 

Danke.

+0

Ein weiterer Sieg für die Gummiente! (Es hilft viel, anderen Leuten (oder einer Gummiente) zu schreiben und sie zu erklären. M –