Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Page Speed für Firebug

Dieses Forum ist für Informationen über Google gedacht (Ausser PageRank!).
Neues Thema Antworten
catcat
PostRank 10
PostRank 10
Beiträge: 10292
Registriert: 02.08.2006, 13:21
Wohnort: Litauen

Beitrag von catcat » 23.01.2010, 11:09

Ich hab da beim PageSpeed Test diese Meldung aus der ich nicht schlau werde:

Code: Alles auswählen

Leverage browser caching
The following resources are missing a cache expiration. Resources that do not specify an expiration may not be cached by browsers. Specify an expiration at least one month in the future for resources that should be cached, and an expiration in the past for resources that should not be cached:
Wo kann ich eigentlich die "cache expiration"-Zeit eintragen?
In die .htaccess?
In jede der php-Dateien, die beanstandet werden?
In die php.ini?
In den header?

Baum. :(

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Synonym
PostRank 10
PostRank 10
Beiträge: 3708
Registriert: 09.08.2008, 02:55

Beitrag von Synonym » 23.01.2010, 11:19

Also dabei geht es um Angaben wie "Expires: Sat, 23 Jan 2010 08:28:43 GMT" in Verbindung mit "Cache-Control"

Per Apache kannst Du das mit dem mod_expires erreichen, ist allerdings nur für statische Objekte sinnvoll (meine Meinung). Für PHP Geschichten finde ich persönlich eine Lösung über Etag besser.

Ansonsten, ja, in der php.ini geht das, in der .htaccess auch oder eben über PHP mit header().

Nachtrag: PageSpeed finde ich da auch etwas doof, denn der bemängelt immer wenn ein Expires fehlt. YSlow ist da besser, dem reicht auch ein vorhandenen Etag, bzw. bemängelt es sogar wenn beides vorhanden ist.

Nachtrag 2: https://code.google.com/speed/page-spee ... serCaching
https://developer.yahoo.com/performance ... ml#expires

Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 23.01.2010, 11:59

Synonym hat geschrieben:Also dabei geht es um Angaben wie "Expires: Sat, 23 Jan 2010 08:28:43 GMT" in Verbindung mit "Cache-Control"
Nein, Cache-Control ersetzt Expires. Expires impliziert eine Speicherbarkeit, ansonsten würde ein Verfallsdatum keinen Sinn machen. Cache-Control erlaubt lediglich eine feinere Steuerung der Caches.
Für PHP-Geschichten finde ich persönlich eine Lösung über Etag besser.
Das sind zwei paar Schuhe. Expires setzt ein Verfallsdatum, d.h. bis zu diesem Datum brauchen die Daten nicht mehr abgerufen werden. ETag bzw. Last-Modified bieten hingegen eine Möglichkeit, eine Cache-Kopie mit dem Original abzugleichen, ohne die Daten komplett runterladen zu müssen. Das eine ist kein Ersatz für das andere und insbesondere ist ETag/Last-Modified alleine nutzlos, es müssen auch bedingte Anfragen verarbeitet, d.h. mit einem Not Modified beantwortet werden können.

Oder, kurz und bündig auf Englisch:
„It is important to specify one of Expires or Cache-Control max-age, and one of Last-Modified or ETag, for all cacheable resources. It is redundant to specify both Expires and Cache-Control: max-age, or to specify both Last-Modified and ETag.“
catcat hat geschrieben:Wo kann ich eigentlich die "cache expiration"-Zeit eintragen?
Das hängt davon ab, was du willst. Am sinnvollsten ist es, wenn du erstmal den ganzen Kram, den man sowieso nur einmal runterladen muss, mit einem Expires versiehst, Bilder, CSS- und Javascript-Dateien, alles was statisch ist. Dafür brauchst du mod_expires und dieses steuert man, wie den gesamten Server, über die .htaccess und die anderen Konfigurationsdateien.

Wie du mit PHP-Skripten umgehst, kommt auf deren Funktion an. Es gibt Skripte, die liefern bei jedem Aufruf geänderte Daten, bei anderen ist eine Cache-Zeit zu verschmerzen (Expires; ich habe meine HTML-Daten beinahe ausnahmslos mit einer Stunde Verfallszeit).

ETag oder Last-Modified last but not least bringt dir wie oben schon geschrieben nur etwas, wenn deine Skripte auch bedingte Anfragen verarbeiten können.
Zuletzt geändert von Mork vom Ork am 23.01.2010, 12:07, insgesamt 1-mal geändert.