Nickname
Passwort | vergessen?

206 anonyme User

77156 Mitglieder freuen sich auf Dich!
Top-Aktivitäten
Sehen Sie hier, wer zu den aktivsten Mitgliedern der aktuellen Woche zählt:
In den Bereich Webserver wechseln ..

Apache Modul Deflate (mod-deflate, mod-gzip)

Mitglied: Frank
Geschrieben von Frank (Level 3 - Junior Administrator)
Erstellt am 30.09.2004, um 10:34:01 Uhr, Permanent-ID: 2894
Dieser Beitrag wurde bisher 22398 mal aufgerufen und gilt als gelöst.
Melden Sie sich mit Ihrem Nicknamen an, um diesen Beitrag zu bewerten!
Neutral0 NeutralDruckenBeobachten
Durch die Module "Deflate" oder "mod_gzip" liefert der Apache 2 Server die Seiten komprimiert aus. In der Regel wird diese Kompression von allen modernen Browsern unterstütz (Internet Explorer 6 , Mozilla, Firefox, Opera usw.). Bei großen Webseiten mit hohen Zugriffszahlen zahlt sich die Installation durch die Reduzierung des Trafiks schnell aus. Positiver Nebeneffekt ? die Seiten werde auch schneller ausgeliefert, da sie kleiner sind.
Da das aktuelle Apache Modul "mod_gzip" unter dem Apache 2.0 von dem internen Modul "mod_deflate" abgelöst wurde, hier mal eine kleine Anleitung dazu.

Bei den meisten Binär-Paketen der großen Distributoren ist mod_deflate schon aktiviert bzw. mit kompiliert.
Diejenigen unter uns, die Ihren Apache aber lieber selbst kompilieren, sollten auf jeden Fall "--enable-deflate" beim Kompilieren mit angeben (wenn man schon gerade dabei ist auch gleich "--with-mpm=worker" mit angeben, das schaltet das Threading ein)
Nach dem Kompilieren und dem Starten des Apache sollte unter /server-info (was man extra in der httpd.conf aktivieren muss) das Modul: mod_deflate.c stehen.

Jetzt fehlen noch die httpd.conf Einträge:
01.
<Location /> 
02.
  # Insert filter 
03.
  SetOutputFilter DEFLATE 
04.
 
05.
  # Netscape 4.x has some problems... 
06.
  BrowserMatch ^Mozilla/4 gzip-only-text/html 
07.
 
08.
  # Netscape 4.06-4.08 have some more problems 
09.
  BrowserMatch ^Mozilla/4\.0[678] no-gzip 
10.
 
11.
  # MSIE masquerades as Netscape, but it is fine 
12.
  # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
13.
 
14.
  # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48 
15.
  # the above regex won't work. You can use the following 
16.
  # workaround to get the desired effect: 
17.
  BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html 
18.
 
19.
  # Don't compress images 
20.
    SetEnvIfNoCase Request_URI \     
21.
      \.(?:gif|jpe?g|png)$ no-gzip dont-vary 
22.
 
23.
  # Make sure proxies don't deliver the wrong content 
24.
  # Header append Vary User-Agent env=!dont-vary 
25.
</Location>  
26.
 
27.
  DeflateFilterNote ratio 
28.
  DeflateCompressionLevel 6
Um die Kompressionsrate auch auslesen zu können, kann man das Logfile anpassen:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" (%{ratio}n)" combineddeflate

Jetzt sollte man noch der Logfile Datei das neue Format beibringen ("combineddeflate" anstatt "combined"):
CustomLog /usr/local/apache2/logs/access.log combineddeflate

So das war es. Ob die Seiten jetzt auch wirklich komprimiert ausgeliefert werden, kann man z.B. mit dem PHP Befehl phpinfo() unter "HTTP Headers Information" auslesen.

Weiter Informationen findet Ihr auf der Apache Seite oder hier. Ob die Seite auch wirklich komprimiert ausgeliefert wird, könnt Ihr hier testen.

Links:

Gruß
Frank
Kommentar schreibenMit Zitat
Anmeldung erforderlich!
Bitte melden Sie sich erst mit Ihrem Nicknamen und Passwort an.