Subject: | FastCGI installation acts as fun spoiler |
This is not a real error, but it took me some serious time to locate and make a work around for.
I had a perfectly working Kwiki (based on 0.18) for my notes, but all of a sudden I was getting this error message on my workstation.
% version.pl CGI::Kwiki
CGI::Kwiki located in /Library/Perl/5.8.1 is version: 0.18
% uname -a
Darwin hyperstation.local 7.3.0 Darwin Kernel Version 7.3.0: Fri Mar 5 14:22:55 PST 2004; root:xnu/xnu-517.3.15.obj~4/RELEASE_PPC Power Macintosh powerpc
The error message:
[Tue Apr 27 09:02:28 2004] [error] [client 127.0.0.1] Premature end of script headers: /Users/jonasbn/Sites/NotesWiki/index.cgi
All the CGIs compiled and running them on the commandline gave HTML output on STDOUT. So the problem would have to be with the Apache, but I was perfectly able to run a helloworld CGI script living in the same directory.
So I examined index.cgi - and I fell over this line:
my $cgi_class = (eval { require CGI::Fast; 1 } ? 'CGI::Fast' : 'CGI');
I have earlier been experimenting with FastCGI/CGI::Fast so it is installed on my workstation, but no longer used, but apparently CGI::Kwiki lets it have higher precendence than CGI if installed. So I forced it to use CGI with the following line:
$cgi_class = 'CGI';
And now everything works perfectly again.
In my opinion the use of CGI::Fast should be configurable and not based on what can be located in @INC.
Maybe this could go in the FAQ or documentation?
Thanks for a marvellous module anyway :)
jonasbn