So löschen Sie die komplette cache im Lack?
Ich bin auf der Suche nach einem Weg, um löschen Sie den cache für alle Domänen und URLs in Lack.
Derzeit würde ich ausgeben müssen, die einzelnen Befehle für die einzelnen URLs, zum Beispiel:
curl -X PURGE http://example.com/url1
curl -X PURGE http://example.com/url1
curl -X PURGE http://subdomain.example.com/
curl -X PURGE http://subdomain.example.com/url1
//etc.
Während ich bin auf der Suche nach einem Weg, etwas zu tun, wie
curl -X PURGE http://example.com/*
Und damit wäre klar, alle URLs unter example.com aber auch alle URLs, sub-domains example.com im Prinzip alle URLs verwaltet Lack.
Irgendeine Idee, wie dies zu erreichen?
Dies ist meine aktuelle VCL-Datei:
vcl 4.0;
backend default {
.host = "127.0.0.1";
.port = "8080";
}
sub vcl_recv {
# Command to clear the cache
# curl -X PURGE http://example.com
if (req.method == "PURGE") {
return (purge);
}
}
Haben Sie versuchen, zu verwenden, zu verbieten? Dies kann genau das, was Sie wollen. book.varnish-software.com/4.0/chapters/...
InformationsquelleAutor laurent | 2016-08-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit Lack 4.0 landete ich setzen ihn mit der
ban
Befehl:Während dies funktioniert, es ist nicht sehr effizient für caches mit einer großen Anzahl von Objekten. Ich würde vorschlagen, künftigen Lesern sich Joshua DeWald, die Antwort von unten, die lurker freundlich und dabei ein bisschen einfacher auf-Lack zu verarbeiten.
InformationsquelleAutor laurent
Gut, ich schlage vor, nur neu starten, Lack. Es wird bereinigen Sie alle Dateien, weil Lack hält-cache in den Speicher.
Run:
sudo /etc/init.d/varnish restart
InformationsquelleAutor Paulo Victor
Vorausgesetzt, dass keine änderung der URL oder interne cache-key, für eine vollständige Spülung der einfachste Ansatz wäre neu zu starten, Lack, als es behält seine cache-Speicher.
Wenn eine schnelle Neustart ist nicht akzeptabel, das VERBOT vorgeschlagen, durch Rastislav ist ein großartiger Ansatz. Wird es brauchen, um aktiv zu bleiben, so lange deine längste TTL, so dass, wenn Sie Häufig benötigen einen flush, der BANN-Liste wird ziemlich viel dauerhafter als das Verbot lurker (die sweeps für BANs, die nicht mehr relevant sind) kann immer denken, dass Ihr VERBOT ist sinnvoll,
So, in Ihrem Fall, Ihre VCL wäre:
Jedoch wie erwähnt von Carlos in die Kommentare, dies tatsächlich zu schaffen, ein faul Abwertung (und damit auch nur entfernt auf Anfrage). Wenn Sie wollen, um die Objekte tatsächlich gelöscht, indem die hintergrund-ban lurker jeder so oft, können Sie stattdessen tun:
Dann zu tun, die bündig:
vcl_recv
ist nicht lurker freundlich. Es wird ignoriert werden, indem das Verbot lurker. Das ist nicht kritisch, in einigen Fällen, aber wenn Ihr Verbote werde, um das Spiel eine Menge von Objekten in den Speicher, sollten Sie vermeiden, lazy-invalidierungen und ermöglichen das Verbot lurker Objekte bereinigen. Erstellen lurker freundlich Verbote verlangt ein paar Zeilen mehr in der VCL. Bitte überprüfen Sie varnish-cache.org/docs/trunk/users-guide/purging.html#bans für details.Das ist ein toller Hinweis! Ich werde ändern Sie die Antwort mit, dass in mind.
InformationsquelleAutor Joshua DeWald
Alle entfernen Lack cache von der Kommandozeile aus (erlöschen alle cache):
Hinweis: der Befehl purge.url im Lack 2.x.
Können wir auch bannen, indem Sie einen Hostnamen:
InformationsquelleAutor Ashwin