PERL Script erzeugt Internal Server Error 500


Beim Versuch bei einem Kunden ein PERL Script auf seinem 1&1 PowerPaket ans Laufen zu bekommen kam die Fehlermeldung.

Error 500 – Internal server error
Ein interner Fehler ist aufgetreten!
Bitte versuchen Sie es zu einem späteren Zeitpunkt.

Die Fehlermeldung Error 500 ist natürlich genial und sagt im Prinzip nicht viel aus. Auf der Suche nach der Lösung wurden folgende Punkte überprüft:

1&1 Hilfecenter, „Warum bekomme ich immer einen internen Serverfehler (HTTP 500)“:
http://hilfe-center.1und1.de/hosting/scripte_datenbanken/perl/4.html

1&1 Hilfecenter (älter?), Perl Script läuft nicht:
http://hilfe-center.1und1.de/sp-service/sofort_hilfe_faq/technische_fragen/web_hosting/scripte_cgi
_php_asp_etc_/perl/7.html

Alles war aber korrekt. Die shebang-Zeile war da, die Rechte wurden per WebSpaceExplorer auf 755 gesetzt usw.

Der Perl-Syntaxchecker lieferte:

Ergebnis:
+ Check succeeded
/kunden/homepages/…/test/test.pl syntax OK
STDOUT OK STDERR OK

Auch der CGI-Ausgabe-Monitor lieferte:

Ergebnis:
+ CGI Check succeeded
Hello World!
STDOUT OK STDERR OK

Wenn also der Provider nicht weiterhelfen kann (mal abgesehen von 0900er Hotline) dann sucht man halt im Internet.

Dabei fand ich folgende Seite: „Perl CGI Debugging: Solving a 500 Internal Server Error“:
http://www.thesitewizard.com/archive/servererror.shtml

Aber auch hier waren nur die Standardsachen beschrieben. Also weitergegooglet und dann bei der Seite http://forum.de.selfhtml.org/archiv/2002/5/t12103/ fündig geworden, dort beschreibt jemand genau das Problem.

Die Lösung? Ganz einfach, um eine Ausgabe zu erhalten muss noch der Content-Type gesetzt werden. Nachdem im Perl-Script die Zeile

print „Content-type: text/plain\n\n“;

eingefügt wurde, war alles OK. Sehr witzig die Sache, Danke 1&1. Das Problem scheint aber häufiger der Fall zu sein: http://forum.de.selfhtml.org/archiv/2003/4/t44136/ und wenn man es erstmal verstanden hat, dann findet man auch Seiten wo was zum Thema steht: http://wiki.perl-community.de/bin/view/Wissensbasis/FaqCGIServerError500

In diesem Zusammenhang wurden noch folgende Webseiten entdeckt: 

allgemeines Perl Tutorial:
http://de.wikibooks.org/wiki/Perl-Programmierung:_Hello_World

Programm zum Ermitteln der Perlumgebung:
Perldiver: http://www.scriptsolutions.com/programs/free/perldiver/

Beispielausgabe von Perldiver:
http://www.ihre-webhosting-domain.de/perl/perldiver.cgi

4 Antworten to “PERL Script erzeugt Internal Server Error 500”

  1. Micha Says:

    Danke für den Tipp

    Ergänzung: Wer die Zeile
    print “Content-type: text/plain\n\n”;
    hier rauskopiert muß die typografischen Anführungszeichen durch „normale“ ersetzen, dann klappts.

  2. jp Says:

    Hallo,

    ich habe schon viele gelesen und ausprobiert… aber ich habe immer das error 500… problem.

    Bei ein paar components krieg ich jetz dieses Fehler Meldung, wie (oder who) kann ich print “Content-type: text/plain\n\n”; eingeben?

    Danke

  3. Matze Says:

    Hallo,

    ich habe AWStats bei 1und1 installiert und diese Fehlermeldung erhalten. Jetzt ist sie weg und ich kann weiter machen… Besten Dank!

    Gruß, Matze

  4. diogenes Says:

    Hallo,

    Super-Tip! Und richtig: Danke 1&1

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s


%d Bloggern gefällt das: