gzip-Komprimierung aktivieren

Hinweis: Dieser Artikel ist älter als zwei Jahre (letzte Änderung: 10. August 2010) und evtl. nicht mehr aktuell.

Heute haben wir uns mit dem Thema gzip-Compression / gzip-Kompression beschäftigt. Das Firebug Addon „YSlow“ von Yahoo und auch das „Page Speed“ Addon von Google bzw. die Webmaster-Tools von Google raten dazu, die gzip Komprimierung für gewisse Dateien zu aktivieren um so mehr Geschwindigkeit für die Website zu gewinnen. Durch die Kompression ist es möglich die Website um einige hundert Kilobyte zu entschlacken. Wer kein YSlow und/oder Page Speed hat, kann die Geschwindigkeit auch online testen: GTmetrix online tool to check website speed
Nun gibt es mehrerer Möglichkeiten die Komprimierung zu aktivieren. Genannt seinen da 3 Möglichkeiten, je nach dem wie der Server konfiguriert ist.

  1. Für mod_deflate muss folgender Code in die .htaccess
    <IfModule mod_deflate.c>
    <FilesMatch "\\.(js|css|x?html?|html|htm|php|xml)$">
    SetOutputFilter DEFLATE
    </FilesMatch>
    </ifModule>
    

    Die Datei-Endungen (js|css|x?html?|html|htm|php|xml) lassen sich beliebig ändern.

  2. Für mod_gzip muss folgender Code in die .htaccess
    <ifModule mod_gzip.c>
     mod_gzip_on Yes
     mod_gzip_dechunk Yes
     mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
     mod_gzip_item_include handler ^cgi-script$
     mod_gzip_item_include mime ^text/.*
     mod_gzip_item_include mime ^application/x-javascript.*
     mod_gzip_item_exclude mime ^image/.*
     mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
    </ifModule>
    

    Auch hier lassen sich die Datei-Endungen (js|css|html|htm|php|xml) wieder beliebig ändern.

  3. Für ob_gzhandler (zlib extension) muss folgender Code am Anfang einer Website stehen
    <?php
    ob_start("ob_gzhandler");
    ?>
    

    Tipp1: Für WordPress ist es sinnvoll den Code als allererstes in die functions.php des Themes zu schreiben.
    Tipp2: ob_gzhandler komprimiert nur php-Dateien. Falls also ob_gzhandler genutzt wird, können trotzdem auch die css Dateien komprimiert werden. Dazu kopiert man einfach die css-Datei (z.B. style.css) in eine neue php-Datei (z.B. style.php). In diese neue Datei fügt man ganz oben noch folgendes ein:

    <?php
    if (strpos($_SERVER&#91;'HTTP_ACCEPT_ENCODING'&#93;, 'gzip') !== false) {
    header('Content-type: text/css');
    ob_start("ob_gzhandler");
    }
    ?>
    

    und ganz unten noch diesen Code:

    <?php
    ob_end_flush();
    ?>
    

    Nach dem Upload der style.php in das selbe Verzeichnis wo auch die Ursprungs-CSS liegt, muss noch der Aufruf der css in php geändert werden. Dieses geschieht im head-Teil (z.B. header.php) der Website.

Ob mod_deflate, mod_gzip oder die zlib-extension auf dem Server konfiguriert ist, kann man feststellen, in dem man eine neue Datei phpinfo.php mit dem Inhalt

<?php
phpinfo();
?>

auf den Server hoch lädt und anschließend über den Browser aufruft.

Empfehle uns: email facebook google plus twitter

Artikel Informationen

  • Erstellt am Sonntag, 8. August 2010 um 16:44 (Letzte Änderungen 10. August 2010, 18:17) und abgelegt unter WordPress mit den Tags: , ,
  • Kommentare zu diesen Eintrag im Kommentar Feed Feed.
  • Du kannst einen Kommentar hinterlassen. Pingback ist im Augenblick nicht erlaubt.

1
Hinterlasse einen Kommentar

1 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
1 Comment authors
  Abonnieren  
neuste älteste beste Bewertung
Benachrichtige mich zu:

Danke, hat mir weiter geholfen!