rss facebook twitter
Home

Forums - 1. HTTP-Kompression

Hello GuestSearch
1. HTTP-Kompression
Author Message
Posted on: 30.06.2009 at: 17:46:47
Author:
Administrator
E-Mail:
frank.duehnelt@it-direkt.de

Hintergrund:

Seit der Einführung von HTTP/1.1 zeigen Web Clients ihre Bereitschaft, im GZip Verfahren komprimierte Daten zu empfangen (und zu verarbeiten), in der Verbindung zum Server an. Ist diesem die ISAPI Erweiterung zum Senden GZip komprimierter Inhalte eingestellt, können bspw. bis zu 75% des Datenvolumens einfacher Text-Inhalte eingespart werden.

Posted on: 30.06.2009 at: 18:05:59
Author:
Administrator
E-Mail:
frank.duehnelt@it-direkt.de

EINSTELLEN DER HTTP-KOMPRIMIERUNG IM IIS 6

Da die von Microsoft ausgegebene Beschriebung teils fehlerhaft ist, folgt hier eine detaillierte Schritt-für-Schritt-Anleitung zum Aktivieren der HTTP-Komprimierung.

1 - Einstellen der Webseiten Eigenschaften

Im IIS, in den Eigenschaften von "Webseiten" ("Web Sites Properties") im Reiter "Dienst" ("Service"), entsprechend die HTTP-Kompression einstellen:

  • Anwendungsdateien komprimieren - optional
  • Statische Dateien komprimieren - empfohlen
    (JavaScripte, Cascading Stylesheets etc.)

Einen geeigneten Pfad für das Verzeichnis der temporären Dateien ("Temporary directory") angeben, sowie diesem unbegrenzt oder manuell (ausreichend) Speicher zuweisen.

 

2 - Einstellen der Webdiensterweiterungen

Ebenfalls im IIS im Ordner "Webdiensterweiterungen" ("Web Service Extensions") die ISAPI Erweiterung für die HTTP-Kompression per GZip hinzufügen, da diese standardmäßig nicht aktiviert werden:

  1. Neue Webdiensterweiterung hinzufügen
  2. Wiedererkennbar benennen (bspw. "HTTPCompression")
  3. Mit der Bibliothek der Erweiterung verknüpfen
    (diese liegt im Verzeichnis %windir%\system32\inetsrv\gzip.dll)
  4. IIS neu starten per IISRESET

Anschließend müssen entsprechende Einträge in der Datenbank des IIS weitergehend angepasst werden, da die standardmäßige Konfiguration unzureichend ist.

 

3 - Anpassen der IIS Datenbank

Die IIS Datenbank liegt im Pfad %windir%\system32\inetsrv\MetaBase.xml und kann mit einem beliebigen Text-Editor geöffnet und bearbeitet werden.
Sicherheitshalber empfiehlt sich die vorhergehende Erstellung einer Kopie der zu bearbeitenden Datei, da eine fehlerhafte Änderung ein vollständiges Fehlverhalten im IIS hervorrufen könnte.

  1. Nach den beiden Einträgen IISCompressionScheme ("[...]/Compression/deflate" und "[...]/Compression/gzip") suchen
  2. Jeweils den Attributen HcFileExtensions die Werte "js", sowie "css" hinzufügen
    Achtung: Hier weicht die Dokumentation von Microsoft und im Internet kursierenden Anleitungen von der Realität ab. Trennzeichen zwischen den Werten der FileExtensions ist kein Leerzeichen, sondern ein CR/LF (einfaches Betätigen der Enter-Taste auf Windows-Systemen - sicherheitshalber gleich den Einzug nachahmen)
  3. Datei speichern und IIS erneut starten per IISRESET

Die HTTP-Kompression ist nun für geeignete Browser aktiviert.

Posted on: 30.06.2009 at: 18:12:20
Author:
Administrator
E-Mail:
frank.duehnelt@it-direkt.de

WEITERFÜHRENDE INFORMATIONEN

Unter Umständen können folgende Einstellungen in der MetaBase.xml vereinzelt auftretende Unverträglichkeiten mit älteren Web Clients ausräumen:

IIsCompressionScheme für /Compression/deflate:
HcDoStaticCompression="TRUE"

IIsCompressionScheme für /Compression/Parameters:
HcNoCompressionForHttp10="FALSE"
HcNoCompressionForProxies="FALSE"
(HcNoCompressionForRange="FALSE")

 

Links: