Pourquoi est-ce que mon simple fastCGI script Perl échec?

Je ne suis pas du Perl monde, de sorte que certains de cela est nouveau pour moi. Je suis sur Ubuntu Hardy LTS avec apache2 et mod_fcgid les packages installés. Je voudrais obtenir MT4 cours d'exécution en vertu de l'fcgid plutôt que de mod-cgi (il semble fonctionner OK avec la plaine-vieux CGI).

Je n'arrive pas à obtenir même un simple script Perl pour s'exécuter sous fcgid. J'ai créé un simple "Hello World" application et le code de cette question précédente pour tester si FCGI est en cours d'exécution.

J'ai nommé mon script HelloWorld.fcgi (actuellement fcgid est mis à traiter .fcgi fichiers uniquement). Code:

#!/usr/bin/perl

use FCGI;

print "Content-type: text/html\n\n";
print "Hello world.\n\n";
my $request = FCGI::Request();
if ( $request->IsFastCGI ) { 
    print "we're running under FastCGI!\n";
} else { 
    print "plain old boring CGI\n";
}

Lorsque vous exécutez à partir de la ligne de commande, il imprime la "bonne vieille ennuyeux..." Lorsqu'il est appelé via une requête http d'apache, j'obtiens une erreur de Serveur Interne 500 et la sortie du script est imprimée dans le journal des erreurs d'Apache:

Content-type: text/html

Hello world.

we're running under FastCGI!
[Wed Dec 03 22:26:19 2008] [warn] (104)Connection reset by peer: mod_fcgid: read data from fastcgi server error.
[Wed Dec 03 22:26:19 2008] [error] [client 70.23.221.171] Premature end of script headers: HelloWorld.fcgi
[Wed Dec 03 22:26:25 2008] [notice] mod_fcgid: process /www/mt/HelloWorld.fcgi(14189) exit(communication error), terminated by calling exit(), return code: 0

Quand je lance le .cgi version du même code, il fonctionne très bien. Aucune idée de la raison de la sortie du script est d'aller dans le journal des erreurs? De configuration d'Apache est la valeur par défaut mod_fcgid config plus, dans une directive VirtualHost:

  ServerName test1.example.com
  DocumentRoot /www/example

  <Directory /www/example>
    AllowOverride None
    AddHandler cgi-script .cgi
    AddHandler fcgid-script .fcgi
    Options +ExecCGI +Includes +FollowSymLinks
  </Directory>

OriginalL'auteur sstrudeau | 2008-12-03