Google Pagespeed Insights sagt mir immer noch, dass ich das Browser-Caching aktivieren muss, aber ich verstehe nicht, was mir fehlt. Ich verwende Cloudflare mit aktivierten Optimierungen. Ich sehe diesen HTTP-Header in Chrome-Entwicklertools:
Cache-Kontrolle: öffentlich, maximales Alter = 86400
Caching scheint also bereits aktiviert zu sein! Ich habe auch hinzugefügt
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="1.00:00:00" />
</staticContent>
in meiner web.config Datei.
Ich weiß nicht, was ich sonst tun soll. Hier ist der Fehler, den Google mir gibt:
seo
google
cache-control
euge9522
quelle
quelle
Antworten:
24 Stunden sind zu wenig, um als Cache-Kontrolle zu genügen :) Theoretisch ändern sich Bilder nie, ohne dass sich auch ihr Name ändert. Sie können dies also einfach auf ein Jahr (oder einen Monat, wenn Sie sich damit wohler fühlen) einstellen.
Wenn Sie ein Bild durch ein neues Bild ersetzen, hat es einen neuen Namen.
picture-of-cat-on-18th-birthday.jpg
wird nicht plötzlich ein anderes Bild mit dem gleichen Dateinamen sein. Aus diesem Grund sollten Dateinamen inhaltlich etwas spezifisch sein.Für andere Arten von Ressourcen wie CSS und JS möchten Sie möglicherweise eine andere Taktik wählen. Sie haben (oft) wechselnde Dateien und möchten sich nie / kaum ändern. Sie möchten die Caching-Länge aufteilen:
Dies ist nicht machbar. Sie können beide oder keine ausführen. Bei .htaccess wird ein Dateityp angezeigt.
Aus diesem Grund setzen Sie es auf den langen Cache und verwenden ein Postfix, um einen neuen Download zu erzwingen, wenn sich dies ändert:
Auf diese Weise muss der Benutzer es nur erneut herunterladen, wenn Sie tatsächlich eine Änderung vorgenommen haben.
Diese Technik funktioniert auf allen Ressourcen. Streben Sie immer die höchste Caching-Dauer an.
quelle
filemtime()
. Wenn die Datei geändert wird, wird eine neue URL erstellt, die den erneuten Erwerb des Assets erzwingt, ohne Caches und andere Dinge zu löschen. Kann das gleiche mit Bildern machen oder was auch immer. Und ich denke, Google mag eine Cache-Zeit von mindestens 8 Tagen, um die Seitengeschwindigkeit zu überschreiten.Ich sehe, dass die vorherige Antwort besagt, dass 24 Stunden nicht genug sind. Wenn Sie sich jedoch das Google-Dokument ansehen : https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching#defining-optimal-cache-control-policy , heißt es, dass die Bilder für 1 zwischengespeichert werden Tag für optimales Caching.
Das Zwischenspeichern von Bildern für kurze Zeit ist sinnvoll, da es zur Verbesserung der Suchmaschinenoptimierung besser ist, die Bilder nicht mit einem Fingerabdruck zu versehen. Es ist also ein guter Kompromiss, wenn Sie das Bild ändern möchten.
Auch nicht, dass nach 24 Stunden Bilder erneut geladen werden (wenn Sie das Cache-Steuerelement auf 1 Tag einstellen), verwendet es dann das E-Tag und vergleicht die Bilder, indem es einen Server-Roundtrip durchführt und erneut speichert.
Es bleibt also die Frage, warum das Pagespeed Insight Tool die Empfehlung von Google nicht berücksichtigt.
quelle