alex: mod_fcgid in xampp für perl nutzen

huhu leute,

noch hab ich die hoffnung nicht begraben, dass ich mod_fcgid zum laufen bekomme, aber irgendwie ist es immer das gleiche

in meinem error.log taucht folgendes auf:

[Sun Feb 17 13:51:07 2008] [warn] (OS 109)The pipe has been ended.  : mod_fcgid: get overlap result error
[Sun Feb 17 13:51:07 2008] [error] [client 127.0.0.1] Premature end of script headers: fcgi.fcgi

ich habe xampp 1.6.6 installiert (apache 2.2.8) dazu fcgi 0.67.
von apachelounge habe ich das mod_fcgid runtergeladen und die schritte zum install ausgeführt.

ich habs auf nem xp64 und auf nem vista nicht zum laufen bekommen

folgende conf für den apache dazu:

__CONF__

LoadModule fcgid_module modules/mod_fcgid.so

<IfModule !mod_fastcgi.c>

AddHandler fcgid-script fcg fcgi fpl

</IfModule>

<IfModule mod_fcgid.c>

IPCCommTimeout 40
    IPCConnectTimeout 10
    MaxProcessCount 8
    OutputBufferSize 64
    ProcessLifeTime 240
    MaxRequestsPerProcess 500

DefaultInitEnv PATH "C:/Windows/System32; C:/Windows/System32/Wbem; C:/Windows/; C:/xampp/apache/bin; C:/xampp/perl/bin"
    DefaultInitEnv SystemRoot "C:/Windows"
    DefaultInitEnv SystemDrive "C:"
    DefaultInitEnv windir "C:/Windows"
    DefaultInitEnv TEMP "C:/xampp/tmp"
    DefaultInitEnv TMP "C:/xampp/tmp"

DefaultInitEnv PERL_FCGI_MAX_REQUESTS 500
    DefaultInitEnv PERL_FCGI_CHILDREN 4

</IfModule>

__CONF__

hier ist mein mini fcgi script

__SCRIPT__
#!"c:/xampp/perl/bin/perl.exe"

use FCGI;

my $count = 0;
my $request = FCGI::Request();

while( $request->Accept() >= 0 ) {

print("Content-type: text/html\r\n\r\n", ++$count);
 print $request->IsFastCGI();
}
__SCRIPT__

was bitte muss man denn noch machen, beachten um das verflixte modul zu nutzen? leider gibts dazu nirgends eine sinnvolle doku für perl-user.

wäre euch dankbar, wenn ihr mir helfen könntet,
alex

  1. ich hab eben mod_fcgid auf suse10.2 installiert und da funzt das ohne probleme.

    kann es sein, dass mod_fcgid gar nicht unter windows läuft und windows das eigentliche problem ist?
    aber es wird für windows auch explizit angeboten. strange...

    alex

  2. Hi alex,

    <IfModule !mod_fastcgi.c>

    AddHandler fcgid-script fcg fcgi fpl
    </IfModule>

      
    Du willst mod\_fcgid verwenden, aber prüfst auf mod\_fastcgi - Tippfehler?  
      
      
    Viele Grüße,  
      ~ Dennis.
    
    -- 
    Mein [SelfCode](http://community.de.selfhtml.org/fanprojekte/selfcode.htm): [ie:{ fl:( br:> va:) ls:\[ fo:) rl:( n4:# ss:) de:\] js:| ch:{ sh:| mo:} zu:|](http://www.peter.in-berlin.de/projekte/selfcode/?code=ie%3A%7B+fl%3A%28+br%3A%3E+va%3A%29+ls%3A%5B+fo%3A%29+rl%3A%28+n4%3A%23+ss%3A%29+de%3A%5D+js%3A%7C+ch%3A%7B+sh%3A%7C+mo%3A%7D+zu%3A%7C)
    
    1. nein kein tippfehler.

      wenn mod_fastcgi bereits verwendet wird, dann soll er den handler nicht erneut anlegen.

      das ist ne prüfung auf kein mod_fastcgi ;)

      an der konfig kann es glaub ich nicht liegen, ich hab da alles durchgetestet.

      alex

  3. Hallo alex,

    use FCGI;

    Hast Du das entsprechende Perl-Modul überhaupt installiert? Was passiert, wenn Du direkt das FCGI-Script auf der Kommandozeile ausführst? Also c:\xampp\perl\bin\perl c:\pfad\zum\script.fcgi?

    Wenn das Modul nicht funktionsfähig installiert ist, dann wird sich das Perl-Script natürlich vorzeitig beenden mit der Fehlermeldung - und mod_fcgid wird keine gültige Antwort vom Script erhalten, was dann zu beschriebener Fehlermeldung führt.

    Viele Grüße,
    Christian

    1. Hallo alex,

      use FCGI;

      Hast Du das entsprechende Perl-Modul überhaupt installiert?

      das steht bei meinem posting sogar drin, fcgi 0.67

      Was passiert, wenn Du direkt das FCGI-Script auf der Kommandozeile ausführst?

      Also c:\xampp\perl\bin\perl c:\pfad\zum\script.fcgi?

      dann bekomme ich eine 0, weil fastcgi/fcgid nur über den apachen geht.

      Wenn das Modul nicht funktionsfähig installiert ist, dann wird sich das Perl-Script natürlich vorzeitig beenden mit der Fehlermeldung - und mod_fcgid wird keine gültige Antwort vom Script erhalten, was dann zu beschriebener Fehlermeldung führt.

      ähm, kannst du bitte sagen was funktionsfähig ist? darum geht es mir ja :P

      Viele Grüße,
      Christian

      bye alex

      1. Hallo alex,

        Hast Du das entsprechende Perl-Modul überhaupt installiert?

        das steht bei meinem posting sogar drin, fcgi 0.67

        Achso, Sorry, mir war nicht klar, dass Du an der Stelle das Modul meintest.

        ähm, kannst du bitte sagen was funktionsfähig ist?

        Wenn's beim perl-Aufruf eine Fehlermeldung "ich mag das Modul nicht" gibt - was aber hier nicht der Fall ist, daher können wir das ausschließen.

        Du könntest noch versuchen, das Script als normales CGI auszuführen und nicht als FastCGI (das FCGI-Modul in Perl erkennt sowas und reagiert dann wie das CGI-Modul) - wenn das klappt, hast Du wohl einen Bug im fcgid-Modul gefunden, wenn es NICHT klappt, dann liegt's nicht an fcgid, sondern an etwas anderem. Was mir noch auffällt: Die Anführungszeichen in der Shebang-Zeile kommen mir seltsam vor - schonmal ohne versucht? Ansonsten leider keine Ahnung, woran das liegt.

        Viele Grüße,
        Christian

        1. ich bin mir halt nicht sicher wie viele leute das überhaupt schon auf windows hinbekommen haben. ich kenne halt noch keinen, oder die melden sich hier einfach nicht.

          ich hab das loglevel vom apachen mal hochgeschraubt, hier ist das maximum was ich an infos bekomme

          [Tue Feb 19 00:38:17 2008] [info] mod_fcgid: server c:/xampp/perl/bin/perl.exe(4292) started
          [Tue Feb 19 00:38:17 2008] [warn] (OS 109)Die Pipe wurde beendet.  : mod_fcgid: get overlap result error
          [Tue Feb 19 00:38:17 2008] [error] [client 127.0.0.1] Premature end of script headers: fcgi2.fcgi
          [Tue Feb 19 00:38:21 2008] [info] mod_fcgid: process c:/xampp/perl/bin/perl.exe(4292) exit(communication error), return code 9

          sieht mir wie gesagt nach einen OS - betriebssystemfehler aus.
          ich hab das auch auf xp getestet, weil vista ja n bissl strenger ist. aber ich hab kein glück...

          alex