Wie NICHT-cache-500 Interner Server Fehler im Lack
Ich kann nicht herausfinden, für das Leben von mir, wie man Lack zu ignorieren Zwischenspeicherung von 500 interner server Fehler. Grundsätzlich, wenn jemand erwischt Lack und zurückgegeben wird ein 500 internal server error, ich möchte Lack nicht-cache, die Seite (legen Sie eine 0s ttl/grace Periode?). Ich bin mit Lack 3.0.3 und hier ist meine VCL. Standardmäßig möchte ich cache die Seiten für 30 Tage.
sub vcl_fetch {
# Set 30-day TTL
set beresp.ttl = 2592000 s;
set beresp.grace = 15d; /* The max amount of time to keep object in cache */
if (beresp.status == 301 || beresp.status == 302) {
return (hit_for_pass);
}
# Serve pages from the cache should we get a sudden error and re-check in one minute
if (beresp.status >= 500) {
set beresp.grace = 1s;
set beresp.ttl = 1s;
return (hit_for_pass);
}
# Unset the "etag" header (suggested)
unset beresp.http.etag;
return(deliver);
}
So, in Deutsch: wenn ein 500 internal server zurückgegeben wird... die X-CACHE sollte eine VERPASSEN. Wenn ich die Seite aktualisieren, wenn es noch 500 internal server, dann sollte es wieder show VERPASSEN. Wenn die Seite erfolgreich übermittelt wurde, Sie sollte zeigen, ein TREFFER.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Standardmäßig der Lack wird nur der cache mit den folgenden status-codes[1]:
Beachten Sie, dass die erste Zeit die Seite erfolgreich übermittelt wurde erhalten Sie noch eine MISS
[1] http://book.varnish-software.com/3.0/VCL_Basics.html#the-initial-value-of-beresp-ttl