Sönke Tesch: gzip ersetzen?

Beitrag lesen

Die Kodierungsangabe wird sehr wohl benötigt, schließlich ist Deine Datei doch schon (gzip-)kodiert. Du brauchst also eine AddEncoding-Angabe für .gz ("AddEncoding x-gzip .gz") sowie die AddType-Angabe für .html.

AddType text/html .gz klappt leider beim IE nicht, AddType application/x-gzip .html kanns doch auch nicht sein?

Du bringst da was durcheinander: gzip ist (in Deinem Fall) kein Datentyp, gzip ist eine Kodierung. Dementsprechend solltest Du für gzip AddEncoding benutzen (wie oben bereits geschrieben), nicht AddType.

Weiterhin: Hast Du eine _HTML_-Datei, die mit _gzip_ _kodiert_ wurde, dann mußt Du (rein logisch) der Datei beide Endungen geben, .html _und_ .gz: name.html.gz. Nur so erreichst Du, daß der Server die Datei als HTML-Datei ausliefert (.html=text/html) und dem Browser außerdem mitteilt, daß die Daten gzip-kodiert sind (.gz=gzip).

Willst Du jetzt noch, daß auch Browser das Dokument anzeigen können, die kein gzip verstehen (Suchmaschinen gehören dazu), dann solltest Du..

1. ..in der .htaccess des betreffenden Verzeichnisses die Zeile

options +multiviews

einfügen und..

2. ..die unkomprimierte Variante der Datei mit gleichem Basisnamen, aber doppelter .html-Endung (hier: name.html.html) neben die komprimierte Datei legen.

Die Adressen in Deinen Dokumenten darfst Du _nicht_ ändern!

Es passiert jetzt folgendes: Ein Browser ruft name.html ab, der Server findet keine Datei name.html und beginnt dann dank multiviews damit, gleichnamige Dateien mit weiteren Endungen zu suchen. Er findet name.html.html und name.html.gz und liefert davon automatisch diejenige aus, die dem Browser am besten passt.

Du kannst das Spielchen auch noch auf die Spitze treiben und in Deinen Dokumenten keine Adressen mehr mit Endungen angeben, statt <a href="name.html"> also <a href="name">. Das Prinzip ist dasselbe wie eben beschrieben, Du hast allerdings den Vorteil, daß Du beim Umstieg von HTML auf SHTML, PHP, CGI oder was auch immer nicht mehr sämtliche Adressen ändern mußt.

Gruß,
  soenk.e