Alexander Foken: Was ist hier falsch ?

Beitrag lesen

Hallo!

Moin Moin !

Kann mir vielleicht einer von Euch sagen, wo in dem script der fehler sein soll, ich hab keine Ahnung!
Bekomme immer die Fehlermeldung "premature end of script header"
Die Pfadangabe zum interpreter ist auf jeden fall io, da ich auch funktionierende habe :-))

#!/bin/perl -w

use strict;
use CGI::Carp qw(fatalsToBrowser);
print "Content-type: text/html\n\n";

^-- CGI spec sagt: CR/LF als Zeilenende im Header, dann eine Leerzeile zum Body.

Also auf gängigen Systemen

print "Content-type:text/html\r\n\r\n";

(Oder etwas exakter: \r durch \015 und \n durch \012 ersetzen)

Oder -- noch viel besser -- gleich so:

use CGI qw(:all);

print header();

da kann man doch eigendlich nichts falsch machen, oder ?
MfG
Marcel

Doch. ;-)

Zu den anderen Postings:

ASCII-Mode zum Upload ist meiner Meinung nach Pflicht für Perl-Scripte.

"-w" und/oder "use strict;" weglassen ist dumm.

"-T" sollte bei CGIs eigentlich auch immer dabei sein.

Und im Error-Log des Webservers nachzusehen hilft auch gelegentlich!

Alexander