Mike: gzip Module an Apache anbinden

Hallo liebes Forum,

ich versuche an Apache (1.3.22) (unter Windows 2000) das gzip Module (Version 1.3.19.1a) anzubinden, um das Datentransfervolumen zu verringern. Allerdings erhalte ich im Error Logfile des Apaches folgende Fehlermeldung:

"[error] Cannot remove module mod_gzip.c: not found in module list"

Folgende Konfigurationseinstellungen habe ich gewählt:

Da ich außerdem Cold Fusion nutze, binde ich das Modul dynamisch in dieser Reihenfolge ein:

"LoadModule coldfusion_module modules/ApacheModuleColdFusion.dll"

"LoadModule gzip_module modules/ApacheModuleGzip.dll"

Für die restlichen Einstellungen habe ich folgende Adresse als Vorlage genommen und die meisten Einstellungen (bis auf einige Parametereinstellungen) auch so übernommen:

http://www.schroepl.net/projekte/mod_gzip/_de/config.shtml

Leider bin ich nicht so versiert zu verstehen, warum das Mod gzip nicht in der Modul Liste gefunden wird, wenn es doch eindeutig durch LoadModule eingebunden wird. Könnte es ein Problem mit dem ColdFusion Module geben?

Die Forumseinträge zu diesem Thema unter http://forum.de.selfhtml.org/archiv/2002/1/2822/#m15948 habe ich mir zwar durchgelesen; wenn aber darunter die Lösung gestanden hat, so habe ich sie offensichtlich nicht gefunden.

Hat jemand damit schon mal Erfahrung gemacht?

Vielen Dank für Eure Hilfe im Voraus.

Gruß

Mike

  1. Hallo,

    ich habe meine Frage schon selber beantwortet: Es war einfach nur ein dummer Fehler. Ich habe zwar das Modul nicht korrekt eingebunden. Zusätzlich zu dem LoadModul muss die Modulliste angepasst werden:

    AddModule mod_gzip.c

    ;-)

    Hallo liebes Forum,

    ich versuche an Apache (1.3.22) (unter Windows 2000) das gzip Module (Version 1.3.19.1a) anzubinden, um das Datentransfervolumen zu verringern. Allerdings erhalte ich im Error Logfile des Apaches folgende Fehlermeldung:

    "[error] Cannot remove module mod_gzip.c: not found in module list"

    Folgende Konfigurationseinstellungen habe ich gewählt:

    Da ich außerdem Cold Fusion nutze, binde ich das Modul dynamisch in dieser Reihenfolge ein:

    "LoadModule coldfusion_module modules/ApacheModuleColdFusion.dll"

    "LoadModule gzip_module modules/ApacheModuleGzip.dll"

    Für die restlichen Einstellungen habe ich folgende Adresse als Vorlage genommen und die meisten Einstellungen (bis auf einige Parametereinstellungen) auch so übernommen:

    http://www.schroepl.net/projekte/mod_gzip/_de/config.shtml

    Leider bin ich nicht so versiert zu verstehen, warum das Mod gzip nicht in der Modul Liste gefunden wird, wenn es doch eindeutig durch LoadModule eingebunden wird. Könnte es ein Problem mit dem ColdFusion Module geben?

    Die Forumseinträge zu diesem Thema unter http://forum.de.selfhtml.org/archiv/2002/1/2822/#m15948 habe ich mir zwar durchgelesen; wenn aber darunter die Lösung gestanden hat, so habe ich sie offensichtlich nicht gefunden.

    Hat jemand damit schon mal Erfahrung gemacht?

    Vielen Dank für Eure Hilfe im Voraus.

    Gruß

    Mike

    1. Hi Mike,

      Es war einfach nur ein dummer Fehler. Ich habe zwar das Modul nicht
      korrekt eingebunden. Zusätzlich zu dem LoadModul muss die Modulliste
      angepasst werden:
      AddModule mod_gzip.c

      das wundert mich jetzt ein wenig.

      Ich habe dasselbe nämlich gestern auch gemacht (Apache 1.3.23 für Win98),
      und ich brauchte nur das "LoadModule" ...
      Löschst Du denn zwischendurch alle geladenen Module wieder?
      (http://httpd.apache.org/docs/mod/core.html#clearmodulelist)
      Ich kenne das bisher nur aus diversen versauten Linux-Distributionen ...

      Immerhin scheinst Du Glück gehabt zu haben, was das Herunterladen der DLL
      angeht - je nachdem, mit welchem Browser man sie saugt, geht sie dabei ggf.
      kaputt und schwankt auch um ein paar Bytes in der Größe ...
      (Kevin sollte wirklich mal ein Zip-Archiv anbieten statt der DLL.)

      Viele Grüße
            Michael

      1. Hi Michael,

        soweit ich den Überblick habe, lösche ich die Module nicht. aber vielleicht vertue ich mich da auch. Ich habe es mal ohne AddModule mod_gzip.c ausprobiert, aber es funktioniert nur mit dieser zusätzlichen Befehlszeile (es steht ja auch so in der Konfigdatei, dass es dieser zusätzlicher Zeilen bedarf, sobald ein Modul eingebunden wird.)

        Ich habe dafür ein anderes interessantes Problem: Ich binde via AdServer Werbebanner ein. Leider wird Unter NE alles zerschossen, da es sich hiewr um Javascript handelt. Ich habe versucht, geziekte Dateien auszuschließen, leider ohne Erfolg. Hast Du da eine Idee?

        Gruß

        Mike

        Hi Mike,

        Es war einfach nur ein dummer Fehler. Ich habe zwar das Modul nicht
        korrekt eingebunden. Zusätzlich zu dem LoadModul muss die Modulliste
        angepasst werden:
        AddModule mod_gzip.c

        das wundert mich jetzt ein wenig.

        Ich habe dasselbe nämlich gestern auch gemacht (Apache 1.3.23 für Win98),
        und ich brauchte nur das "LoadModule" ...
        Löschst Du denn zwischendurch alle geladenen Module wieder?
        (http://httpd.apache.org/docs/mod/core.html#clearmodulelist)
        Ich kenne das bisher nur aus diversen versauten Linux-Distributionen ...

        Immerhin scheinst Du Glück gehabt zu haben, was das Herunterladen der DLL
        angeht - je nachdem, mit welchem Browser man sie saugt, geht sie dabei ggf.
        kaputt und schwankt auch um ein paar Bytes in der Größe ...
        (Kevin sollte wirklich mal ein Zip-Archiv anbieten statt der DLL.)

        Viele Grüße
              Michael

        1. Hi Mike,

          Ich binde via AdServer Werbebanner ein. Leider wird Unter NE
          alles zerschossen, da es sich hier um Javascript handelt.

          ... und zwar um JavaScript aus externen Dateien.
          Das kriegt der leider Knilch nicht gebacken. :-(

          Ich habe versucht, geziekte Dateien auszuschließen,

          Richtige Idee.

          leider ohne Erfolg. Hast Du da eine Idee?

          Eigentlich is Ausschließen leichter als Einschließen (letzteres muß
          man nämlich doppelt tun).

          Ausschließen könntest Du Deine JavaScript-Dateien

          • entweder über "uri" (ggf. etwas unsicher, der könnte sich
              innerhalb des Apache ändern)
          • oder über "file" (".js$" funktioniert prima)
          • oder über "mime" (den müßtest Du dazu nachsehen, wahrscheinlich
              "application/x-javascript" oder so ähnlich)

          Ob Du das so willst, hängt von Deiner Site ab (viel JavaScript?) und
          vom Profil Deiner Besucher (viel Netscape4?).
          Alternativ kannst Du auch Netscape 4 ausschließen:

          • Sehr gezielt geht das über den reqheader,
          • mit der Brechstange geht es, indem Du HTTP 1.1 verlangst
              (Netscape 4 kommuniziert 1.0 - so macht das m. E hier der Server).

          Viele Grüße
                Michael

          1. Hi Michael,

            vielen Dank für die Hinweise. Ich hatte schon versucht, asp Datein mit

            mod_gzip_item_exclude file .asp$

            auszuschießen, da in den Layern diese externen Datein für die banner eingebunden werden (das war ja alles sehr gut bei Dir beschrieben :-)). Leider ohne Erfolg. Genauswenig erfolgreich war das Ausschließen von Netscape. Ich habe es mit

            mod_gzip_item_exclude reqheader "User-agent: Mozilla/4.75[67]" (oder [de])

            für NE 4.75 austesten wollen, aber es wurde der selbe Fehler produziert. Das allerdings hat mich verwundert, denn schließlich sollte es doch ohne Probleme möglich sein, mit Hilfe dieser Befehlszeile bestimmte Browsertypen auszuschließen. Wenn das ginge, dann hätte ich kein Problem damit, alle NE 4.x herauszunehmen (Unter NE 6.0 läuft wiederum alles bestens), wobei eine einfachere Syntax mir helfen würde wie "User-agent: Mozilla/4.xx[67]".

            By the way: Was mein [67]? Ist das ein Ländercode?  JavaScript-Endungen werden schon ausgeschlossen, genauso wie CSS Dateien.

            Tja, leider weiss ich nun auch nicht weiter. Ich teste mal das ausschließen von Mime-Typen. Wenn das alles nicht läuft, dann muß ich wohl oder übel aus das Modul verzichten, was ich wirklich schade fände, denn Einsparungen von durchschnittlich 85% (!!!) der ursprünglichen Volumengröße ist schon sehr beachtlich.

            Gruß

            Mike

            Hi Mike,

            Ich binde via AdServer Werbebanner ein. Leider wird Unter NE
            alles zerschossen, da es sich hier um Javascript handelt.

            ... und zwar um JavaScript aus externen Dateien.
            Das kriegt der leider Knilch nicht gebacken. :-(

            Ich habe versucht, geziekte Dateien auszuschließen,

            Richtige Idee.

            leider ohne Erfolg. Hast Du da eine Idee?

            Eigentlich is Ausschließen leichter als Einschließen (letzteres muß
            man nämlich doppelt tun).

            Ausschließen könntest Du Deine JavaScript-Dateien

            • entweder über "uri" (ggf. etwas unsicher, der könnte sich
                innerhalb des Apache ändern)
            • oder über "file" (".js$" funktioniert prima)
            • oder über "mime" (den müßtest Du dazu nachsehen, wahrscheinlich
                "application/x-javascript" oder so ähnlich)

            Ob Du das so willst, hängt von Deiner Site ab (viel JavaScript?) und
            vom Profil Deiner Besucher (viel Netscape4?).
            Alternativ kannst Du auch Netscape 4 ausschließen:

            • Sehr gezielt geht das über den reqheader,
            • mit der Brechstange geht es, indem Du HTTP 1.1 verlangst
                (Netscape 4 kommuniziert 1.0 - so macht das m. E hier der Server).

            Viele Grüße
                  Michael

            1. Hi Mike,

              Ich hatte schon versucht, asp Datein mit
              mod_gzip_item_exclude file .asp$
              auszuschießen,

              ;-)

              da in den Layern diese externen Datein für die
              banner eingebunden werden (das war ja alles sehr
              gut bei Dir beschrieben :-)). Leider ohne Erfolg.

              Das wundert mich - denn das würde ich für die sicherste Methode halten.
              Andererseits kann natürlich der ASP-Handler intern den Dateinamen irgendwie verstümmeln oder was auch immer - weißt Du vielleicht dessen Handler-Name?

              Genauswenig erfolgreich war das Ausschließen von Netscape. Ich habe es mit
              mod_gzip_item_exclude reqheader "User-agent: Mozilla/4.75[67]" (oder [de])

              Damit schließt Du die beiden Browser Netscape 4.756 und Netscape 4.757 aus - willst Du das wirklich? ;-)

              By the way: Was mein [67]? Ist das ein Ländercode?

              Das ist ein regular expression für das Zeichen "6 oder 7", weil ich die beiden Browser 4.06 und 4.07 ausschließen will und keine Lust habe, dafür zwei Regeln zu schreiben.

              Das Sicherste wäre in Deinem Fall, den HTTP-Level 1.1 zu verlangen.

              Viele Grüße
                    Michael

              1. Hi Michael,

                es war wieder einmal ein kleiner Fehler meinerseits mit lästiger Wirkung, der woanders lag: Ich habe einfach zwei öffnende Layer-Tags gehabt, was NE nicht verkraftet hat. Da schaut man eben als letztes hin, wenn der Fehler an anderer Stelle vermutet wird. :-} Aber immerhin darf ich die Ehre haben, mich bei Dir für Deine Hilfe herzlichst zu bedanken. Es läuft jetzt alles einwandfrei und der Apache ist tiefergelegt und getuned.

                Gruß

                Mike

                Hi Mike,

                Ich hatte schon versucht, asp Datein mit
                mod_gzip_item_exclude file .asp$
                auszuschießen,

                ;-)

                da in den Layern diese externen Datein für die
                banner eingebunden werden (das war ja alles sehr
                gut bei Dir beschrieben :-)). Leider ohne Erfolg.

                Das wundert mich - denn das würde ich für die sicherste Methode halten.
                Andererseits kann natürlich der ASP-Handler intern den Dateinamen irgendwie verstümmeln oder was auch immer - weißt Du vielleicht dessen Handler-Name?

                Genauswenig erfolgreich war das Ausschließen von Netscape. Ich habe es mit
                mod_gzip_item_exclude reqheader "User-agent: Mozilla/4.75[67]" (oder [de])

                Damit schließt Du die beiden Browser Netscape 4.756 und Netscape 4.757 aus - willst Du das wirklich? ;-)

                By the way: Was mein [67]? Ist das ein Ländercode?

                Das ist ein regular expression für das Zeichen "6 oder 7", weil ich die beiden Browser 4.06 und 4.07 ausschließen will und keine Lust habe, dafür zwei Regeln zu schreiben.

                Das Sicherste wäre in Deinem Fall, den HTTP-Level 1.1 zu verlangen.

                Viele Grüße
                      Michael