Browser Cache Code für htaccess

Kann mir mal jemand die Codezeile zum Erstellen des Browser caching posten, bitte? Oder ist das in Shopware 5.2.13 bereits enthalten?

Shopware hat mehere Cache Ebenen. Dabei gibt es config, Suche, Template, Theme, HTTP (Browser Cache), und Model (Proxy).

Prinzipiell muss beim Apache Webserver nur das Modul mod_expires aktiviert werden und der Shop im Produktiv-Modus laufen. Letzteres ist eine Backend Einstellung. Details dazu, wie das Browser Caching funktioniert, findet man hier: http://www.hurra.com/blog/google-pagespeed-insights-browser-caching-aktivieren-webshop-beschleunigen

Um zu sehen, ob das Browser Caching bereits aktiv ist, einfach mal die Developer Tools des Browser aufmachen und im Netzwerk die 1. Anfrage ansehen. Wenn darin etwas mit no-cache steht, dann ist es nicht aktiv.

Bei meinem Provider wurde ich aufgeschlaut. Ich muss nur den unten aufgeführten Code in die .htaccess schreiben

  ExpiresActive On
  ExpiresByType image/gif "access plus 7 days"
  ExpiresByType image/ico "access plus 7 days"
  ExpiresByType image/jpeg "access plus 7 days"
  ExpiresByType image/jpg "access plus 7 days"
  ExpiresByType image/png "access plus 7 days"
  ExpiresByType text/css "access plus 7 days"
  ExpiresByType text/javascript "access plus 7 days"
  ExpiresByType application/x-javascript "access plus 7 days"
  ExpiresByType application/javascript "access plus 7 days"

Laut Google Pagespeed ist nicht aktiv. Und laut Netzwerkanalyse ist es auf no cache.

Es ist nicht richtig, dass man in der Netzwerkanalyse bei der ersten Datei erkennen kann, ob das Browsercaching serverseitig konfiguriert ist. Wichtig ist es zu schauen, ob die statischen Assets Caching-Zeiten im Response-Header aufweisen (CSS, JS, JPEG, PNG etc.), Pagespeed Insight bemängelt auch nur das Fehlen bei diesen Assets. 

Außerdem bemängelt Pagespeed Dateien, die nicht vom Shopbetreiber beeinflusst werden können (z. B. ga.js von Google Analytics). Und falls wir von shabby-world reden, dann wird auch nur genau diese Datei “bemängelt”. 

@shabby‍ das steht schon in der von Shopware ausgelieferten .htaccess drin, siehe hier: shopware/.htaccess at 5.2 · shopware/shopware · GitHub

Ein regulärer Ausdruck, der alle Bilder abdeckt. Darunter findet man den 2. regulären Ausdruck, der alle generierten css und JavaScript Dateien abdeckt. Also im Prinzip deine Zeilen vom Provider in einer jeweils für Bilder und generierte CSS / JavaScript Dateien ausgedrückt. Spart etwa 7 Zeilen Tipparbeit und geht nach Dateiendung, nicht nach MIME Type.

Außerdem solltest du oben noch text/javascript ergänzen, was man in der heutigen Zeit öfters antreffen sollte als application/javascript (uralt-Standard von der ersten JavaScript Version).

 

@hth schrieb:

Es ist nicht richtig, dass man in der Netzwerkanalyse bei der ersten Datei erkennen kann, ob das Browsercaching serverseitig konfiguriert ist.

Na wo denn sonst? Die 1. Datei ist immer das vom Server ausgelieferte HTML und damit auch der gesetzte Cache Header.

Also hth meinst Du das ich da nichts weiter machen kann und sich ein browser caching nicht lohnt?

Das Browser Caching ist aktiviert für statische Assets. Es gibt keinen Handlungsbedarf bei shabby-world und das sagt auch Google Page Speed. Das Javascript von Google Analytics kommt von einem Google Server und nur Google könnte längere Caching Zeiten dafür setzen. 

In der Network Tools der Browser muss man sich den Response Header einer statischen Datei ansehen, bei HTML-Dateien ist das Caching nicht notwendig und ggf. auch sehr schnell kontraproduktiv, weil sich der Inhalt der Datei ändern könnte, ohne dass dies vom Browser erkannt werden kann. Im Endeffekt sieht der Kunde dann eine veraltete Seite. 

 

@derwunner schrieb:

@shabby‍ das steht schon in der von Shopware ausgelieferten .htaccess drin, siehe hier: https://github.com/shopware/shopware/blob/5.2/.htaccess#L61

Ein regulärer Ausdruck, der alle Bilder abdeckt. Darunter findet man den 2. regulären Ausdruck, der alle generierten css und JavaScript Dateien abdeckt. Also im Prinzip deine Zeilen vom Provider in einer jeweils für Bilder und generierte CSS / JavaScript Dateien ausgedrückt. Spart etwa 7 Zeilen Tipparbeit und geht nach Dateiendung, nicht nach MIME Type.

Außerdem solltest du oben noch text/javascript ergänzen, was man in der heutigen Zeit öfters antreffen sollte als application/javascript (uralt-Standard von der ersten JavaScript Version).

 

@hth schrieb:

Es ist nicht richtig, dass man in der Netzwerkanalyse bei der ersten Datei erkennen kann, ob das Browsercaching serverseitig konfiguriert ist.

Na wo denn sonst? Die 1. Datei ist immer das vom Server ausgelieferte HTML und damit auch der gesetzte Cache Header.

Wenn das in der shopware .htaccess bereits drin steht, warum wird dann no cache ausgegeben?