Christian Seiler: AuthUserFile

Beitrag lesen

Hallo Martin,

Wird der Perl-Interpreter dagegen vom Apachen aufgerufen, erbt er dessen STDOUT. Und das hat der Apache schon so zurechtgebogen, dass Ausgaben an dieses Handle direkt zum anfragenden Client gehen. Gibt ein Perl-Script in *dieser* Konstellation etwas auf STDOUT aus, geht das also am Apachen vorbei direkt zum Client.

Das ist stark simplifiziert und stimmt so nur für NPH-Scripte. Der Apache biegt das STDOUT von CGI-Scripten (egal ob Perl oder sonstwas) wie Du gesagt hast um, allerdings nicht auf den Client-Socket, sondern auf irgendwas, mit dem zwei Prozesse kommunizieren können. Der Apache liest dann "am anderen Ende" die Ausgabe ein, wartet auf den Trenner zwischen Header / Body, wurschtelt dann noch etwas an den Headern rum (eine Antwort enthält viel mehr Header, als das CGI-Script setzt) und gibt dann alle Header in einem Rutsch aus. Die Body wird idR. direkt "durchgeleitet" - allerdings kann es noch sein, dass noch weitere Filter drauf losgelassen werden (mod_gzip/mod_deflate z.B., die den Datenstrom on-the-fly komprimieren, um Übertragungszeit zu sparen).

Viele Grüße,
Christian

--
"I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone." - Bjarne Stroustrup