So lochen Sie den gesamten Seiten-Cache ohne benutzerdefiniertes Modul

18

Unser ganzseitiger Cache scheint auf der Sitzung zu basieren. Wenn ich ein Inkognito-Fenster mit Chrome öffne und eine der Seiten besuche, wird der Cache erwärmt und die zweite Seite wird viel schneller geladen. Wenn ich dieses Fenster schließe und ein neues Inkognito-Fenster öffne, befindet sich die Seite nicht mehr im Ganzseiten-Cache und muss erneut aufgewärmt werden. Wir glauben, dass dies an einer Seitenleiste liegt, die dem Benutzer den Inhalt seines Einkaufswagens anzeigt.

Ich habe diesen HTML-Code in eine neue HTML-Datei verschoben, die Layout-XML-Blöcke entfernt und arbeite jetzt an der Datei cache.xml.

Alle Beispiele, die ich für cache.xml gefunden habe, beziehen sich auf Module. Ich habe jedoch kein Modul für meine Layout-XML-Blöcke verwendet. Ich habe core / template verwendet.

Gibt es eine Chance, dass jemand etwas Licht in einen XML-Caching-Block bringt, für den kein Modul und / oder Modell erforderlich ist?

Jeffrey L. Roberts
quelle
Verwenden Sie den Magento Enterprise-Ganzseiten-Cache oder ein Drittanbieter-Tool wie Varnish? Wenn Sie einen sichtbaren Einkaufswagen haben, verwendet die Seite die Sitzung als Teil des Cache-Schlüssels. Im Inkognito-Modus werden alle Cookies nach dem Schließen gelöscht, sodass Sie nach dem erneuten Öffnen der Seite eine neue Sitzung erhalten. Ausstanzen hat Probleme. Fabrizio hat einen ausgezeichneten Beitrag: fabrizio-branca.de/…
Tim Reynolds

Antworten:

6

Es gibt keine Möglichkeit, in Enterprise Edition einen Platzhalter zu erstellen, ohne über ein Modul zu verfügen, das die Datei cache.xml enthält, in der sich wiederum die Platzhalterdefinition befindet. Wenn Sie also eine benutzerdefinierte Lücke im Ganzseiten-Cache haben möchten, müssen Sie ein Modul erstellen, um es zu definieren.

Der eingebaute Sidebar Cart Block hat einen Platzhalter aus der Box. Dieser Platzhalter markiert den zwischengespeicherten Inhalt basierend auf der Benutzersitzung. Der Hauptinhalt der Seite wird aus dem Cache geladen, der von anderen Benutzern erwärmt wurde. Es ist nur diese "Lücke", die pro Benutzer gefüllt und generiert werden muss. Sie sollten auch beachten, dass der Inhalt dieses Lochs beim Ändern des Warenkorbinhalts des Benutzers neu generiert und zwischengespeichert wird.

Beachten Sie, dass das oben Gesagte davon ausgeht, dass es sich in der Tat um die Enterprise Edition FPC und das Lochstanzen handelt, auf die Sie sich beziehen, und nicht um etwas wie Lack. Wenn Sie Varnish (mit einer korrekten Konfiguration) verwenden, werden beim ersten Besuch von Magento keine Seiten aus dem Cache angezeigt. Dies liegt daran, dass die Anforderung des Benutzers beim ersten Besuch an Magento weitergeleitet werden muss, damit die Anwendung eine Sitzung für ihn erstellen kann.

Davidalger
quelle