Kai Diefenbach: Offline CGIs testen

Beitrag lesen

Hallo Fenrir,

Ich habe mir zu Testzwecken einen Offline-Server unter Win98 eingerichtet. Dazu benutze ich Apache 1.3.12 und ActivePerl 5.6.0. PHP, etc. ist alles eingerichtet, läuft wunderbar. Auch simple CGI-Scripts laufen. Sobald ich jedoch Perl-Scripts aus dem Netz runterziehe und testen will, streikt der Apache. Und zwar grundsätzlich bei dem Aufruf "&header" in den Scripts.

Die Fehlermeldung im Apache-Log lautet dann:
Premature end of script headers: "Scriptname"

Diese Fehlermeldung wird ueblicherweise ausgegeben, wenn kein gueltiger HTTP-Header vorhanden ist

Undefined subroutine &main::header called at "Scriptname"
line "Zeilennummer".

Das sieht mir ganz danach aus, als ob bei Dir das CGI-Modul nicht richtig implementiert ist (ungewoehnlich, da es zur Standartbibliothek gehoert), dieses bringt naemlich die Fkt. 'header' mit. (und diese gibt den HTTP-Header aus)

Ist bei dir CGI.pm unter PathToPerl/lib/ vorhanden ?

Wenn ja, schau mal in den Scripts nach, ob folgende Zeile vorhanden ist:

use CGI qw/:standard/;
wenn nicht installiere perl noch mal neu.

oder teste mal dieses Skript:

#!perl -w
use strict;

use CGI qw/:standard/;
print header,h1('Hey, es funktioniert !');

Du kannst auch von der Konsole testen, Du musst nur die Eingabeaufforderung (name=value) mit CTRL-C abbrechen.

Danke.

Gruss
   Kai