Wie machen Lack ignorieren, nicht die cookies löschen
Will ich mit Lack Zwischenspeichern von bestimmten Seiten sogar in der Anwesenheit von cookies. Es gibt 3 Möglichkeiten, dass ich aufpassen müssen:
- Eine anonyme Anzeige einige Seite
- Ein Benutzer eingeloggt ist, wird der Anzeige-Seite mit leichten Anpassungen. Diese Anpassungen werden alle gespeichert in einem signed-cookie und dynamisch bevölkert von Javascript. Der vary-http-cookie-header ist nicht gesetzt.
- Ein Benutzer eingeloggt ist, wird der Anzeige-Seite mit benutzerdefinierten Daten aus der Datenbank. Der vary-http-cookie-header gesetzt ist.
Das erwartete Verhalten wäre:
- Cache der Seite. Dies ist die grundlegende Szenario für Lack zu behandeln.
- Cache der Seite und nicht den cookie löschen, da einige Javascript-Logik benötigt.
- Nie cache dieser Seite, da variieren-cookie signalisiert der Inhalt des Cookies wird auf die Ausgabe von dieser Seite.
Ich habe einige docs auf Lack und ich kann nicht sagen, ob dies das Standardverhalten ist, oder wenn es gibt einige setup -, ich habe zu tun, VCL, es geschehen zu lassen.
InformationsquelleAutor der Frage Jason Christa | 2010-11-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur Sitzungen sind einzigartig für jeden client, nicht unbedingt cookies.
Was Sie wollen, macht Sinn und ist möglich mit Lack, es ist nur eine Frage der sorgfältig Handwerk Ihre eigene vcl. Bitte achten Sie auf die folgenden Teile der Standard.vcl:
Ist, ersetzen Sie diese Teile durch Ihre eigene Logik, D. H. definieren Sie Ihre eigenen vcl_ Funktionen. Standardmäßig Anforderungen (vcl_recv) und Antworten (vcl_fetch) mit cookies werden nicht zwischengespeichert werden. Sie wissen, dass Ihre back-end-Anwendung, die beste, und Sie sollten schreiben Sie die generische Logik, um diesen speziellen Fall. Das heißt, sollten Sie festlegen, in welchem Fall Lack macht einen lookup, übergeben oder zu liefern.
In Ihrem Fall, Sie haben die Seiten (Fall 1) und 2) ohne eine variieren-von cookie zwischengespeichert werden und von allen Benutzern gemeinsam genutzt (Anfragen, mit/ohne cookies); nur nicht Geist erf.http.Cookie in vcl_recv. Ich würde nicht cache-Seiten (Fall 3) mit einem vary-durch cookie -oder zumindest nicht für eine lange Zeit, wie Sie können, nicht geteilt, an alle; 'pass' in vcl_fetch.
InformationsquelleAutor der Antwort ivy