Christoph Schnauß: Vorteile/Nachteile der "Modulvariante" unter Windows

hallo Forum,

ich habe ein Verständigungsproblem mit PHP unter Windows. Bekanntlich muß man, wenn PHP als "Modulvariante" gefahren werden soll, die php4ts.dll entweder ins system32-Verzeichnis oder beispielsweise in dasselbe Verzeichnis, in dem die apache.exe liegt, kopieren, um in der httpd.conf eine "LoadModule"-Anweisung wirksam einsetzen zu können. Habe ich gemacht, funktioniert auch so weit, daß ich allerhand kleinere Testscripts auf meinem Rechner problemlos zum Arbeiten animieren kann.
Aber was habe ich eigentlich jetzt von dieser Modulvariante" im Gegensatz zur vorher vorhandenen "CGI-Variante"? Ich gebe gerne zu, daß ich mich mit PHP bisher noch nicht wirklich tiefgründig befaßt habe. Ein paar Zählscripts schreiben oder ein Gästebuch oder ein Suchscript, das ist kein Problem, zu "mehr" habe ich es bisher nicht benötigt. Warum sollte ich mir nun diese "Modulvariante" einrichten, wenn ich bisher mit der "CGI-Variante" auch alles erledigen konnte, was ich bisher an Anforderungen hatte?

Grüße aus Berlin

Christoph S.

  1. Moin!

    Aber was habe ich eigentlich jetzt von dieser Modulvariante" im Gegensatz zur vorher vorhandenen "CGI-Variante"? Ich gebe gerne zu, daß ich mich mit PHP bisher noch nicht wirklich tiefgründig befaßt habe. Ein paar Zählscripts schreiben oder ein Gästebuch oder ein Suchscript, das ist kein Problem, zu "mehr" habe ich es bisher nicht benötigt. Warum sollte ich mir nun diese "Modulvariante" einrichten, wenn ich bisher mit der "CGI-Variante" auch alles erledigen konnte, was ich bisher an Anforderungen hatte?

    Die Modul-Variante hat im Grunde zwei Vorteile: Zum einen ist sie ständig im Speicher geladen, PHP-Skripte starten also etwas schneller, als die CGI-Variante.

    Zweitens hat die Modul-Version Zugriff auf gesendete HTTP-Authentifizierungsdaten und kann mit header() direkt HTTP-Statusmeldungen beeinflussen, was der CGI-Variante verwehrt bleibt.

    Als Nachteil bleibt, dass das Modul in jedem Fall als der Apache-User Zugriff auf alle Dateien hat - es ist also nicht so einfach, den Zugriff verschiedener User voneinander zu trennen. PHP hat dafür den Safe Mode erfunden, bei dem einige zusätzliche Checks vorgenommen werden - ich persönlich finde den aber eher hinderlich und bin froh, dass ich mich damit nicht rumärgern muß. Für die eigenen Versuche zuhause ist diese Überlegung sowieso irrelevant.

    - Sven Rautenberg