Vor kurzem habe ich mich daran gemacht, die Ladegeschwindigkeit meiner Internetseite mit PageSpeed von Google und YSlow von Yahoo zu analysieren und zu verbessern.
Nachdem ich alle Kleinigkeiten verbessert hatte, blieben zwei wichtige Parameter übrig:
- Die Aktivierung der Komprimierung mit gzip
- Die Nutzung des Browser Cache mit Expire durch Hinzufügung eines Expire Headers
Die dazu erforderlichen Einstellungen sind vom jeweiligen Provider, bei dem man seinen Internetauftritt gehostet hat abhängig und werden typischerweise über einen Eintrag in der htaccess Datei auf dem Webspace vorgenommmen.
Mein Internetauftritt liegt bei dem Provider STRATO. Nach vielen erfolglosen Versuchen konnte ich endlich mit den nachfolgenden Einstellungen in der .htaccess Datei die Verwendung von GZIP und das Setzen der Expires Headers erfolgreich aktivieren:
Aktivierung der Auslieferung von mit GZIP komprimierten Seiten. Bei Änderungen im HTML-Code muss die jeweilige Seite z.B. mit 7-Zip komprimiert werden und die komprimierte Datei ebenfalls auf den Webserver übertragen werden.
RewriteBase /
RewriteCond %{HTTP:Accept-Encoding} .*gzip.*
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule (.*)\.html$ $1\.html.gz [L]
RewriteRule (.*)\.htm$ $1\.htm.gz [L]
RewriteRule (.*)\.js$ $1\.js.gz [L]
RewriteRule (.*)\.css$ $1\.css.gz [L]
AddEncoding x-gzip .gz
Und hier die Einstellung, um die einzelnen Dateien mit einem Expires Header auszuliefern:
ExpiresActive On
Header set Cache-Control "public"
ExpiresDefault A1209600
ExpiresByType text/javascript A300
ExpiresByType text/css A300
ExpiresByType image/gif A300
Hier das Ergebnis nach der Aktierung der Expires Headers und der gzip Komprimierung. Nun sind es 96 von 100 Punkten:
Gute Online Alternativen um die Ladegeschwindigkeit der Webseite und weitere Optimierungsmöglichkeiten zu analysieren sind die Angebote von GTmetrix und WebPagetest.
Vielen Dank für die Informationen. Das war wirklich hilfreich!
Hast Du noch weitere Einstellungen getroffen, damit der Inhalt auch wirklich komprimiert wird? Bei mir kommt mit den Settings von oben immer noch plain HTML zurück…
Thx,
Jan
Hi Wolfgang,
ich stehe gerade vor genau dem gleichen Problem und der Strato-Support kann will mir nicht weiterhelfen (oder zumindest nicht vom fachchinesisch abweichen).
Vielleicht kannst du mir ja weiterhelfen:
Ich habe einen übergeordneten Ordner mit einer .htaccess Datei und darin noch einen Ordner mit meinen WordPressdateien, wo auch eine .htaccess Datei liegt.
Muss ich die übergeordnete .htaccess Datei bearbeiten, oder die, welche im WordPress-Ordner liegt?
Trage ich danach einfach deine beiden Codeteile ein, also
RewriteBase /
RewriteCond %{HTTP:Accept-Encoding} .*gzip.*
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule (.*)\.html$ $1\.html.gz [L]
RewriteRule (.*)\.htm$ $1\.htm.gz [L]
RewriteRule (.*)\.js$ $1\.js.gz [L]
RewriteRule (.*)\.css$ $1\.css.gz [L]
AddEncoding x-gzip .gz
ExpiresActive On
Header set Cache-Control „public“
ExpiresDefault A1209600
ExpiresByType text/javascript A300
ExpiresByType text/css A300
ExpiresByType image/gif A300
Muss ich sonst noch etwas aktivieren oder beachten?
Liebe Grüße,
David
Alles klar, das probiere ich mal aus, danke dir! 🙂
Grüße,
David
Hi,
in der übergeordneten Datei hat das eine 500er Fehlermeldung verursacht und meinen Blog gecrasht. Jetzt muss ich den erstmal wieder zum Laufen bringen.
Aber trotzdem danke für deine Hilfe.
Grüße,
David