Ich erhalte "Internal Server Error" beim Aufruf meiner Seite. Was ist zu tun?

Dieser Fehler kann verschiedene Ursachen haben.

1. Bei einem CGI-Skript
Hier gibt es drei Möglichkeiten für den Fehler. Wenn das Skript sich nicht im Ordner cgi-bin befindet, sollten Sie im Confixx die Option
CGI/Perl außerhalb cgi-bin aktivieren. Diesen Punkt finden Sie in der Confixx-Übersicht.
Scheidet diese erste Möglichkeit aus, sollten Sie die Rechte des Skriptes überprüfen.Diese sollten sowohl für das Verzeichnis (meistens cgi-bin), als auch für das Skript selbst 755 sein. Beachten Sie dazu auch den Artikel über Dateirechte.
Ist auch das nicht die Ursache, kommt ein Problem mit den Zeilenenden in Frage. Sie müssen wissen, dass Windows anders als Unix Zeilenenden in Textdateien anders abspeichert. Windows verwendet dazu einen CarriageReturn (Wagenrücklauf) und ein NewLine (neue Zeile). Unix lediglich ein NewLine.

In der Regel sieht die erste Zeile eines CGI-Skripts in etwa so aus:

  #!/usr/bin/perl


Da Windows nun noch den Wagenrücklauf einfügt, "sieht" Unix diesen Pfad nun so:

  #!/usr/bin/perl\CR


Diesen Intepreter gibt es jedoch nicht, die Shell gibt "Bad Interpreter" zurück, ohne einen Content-Type zu senden. Der Apache quittiert das dann mit einem "Premature end of script headers", im Browser sieht man dann die besagte Fehlermeldung. Man kann das in diesem Beispiel verhindern, indem man einen unkritischen Parameter hinter den Interpreterpfad schreibt. Bei Perl ist das bspw. -X, um die Warnungen abzuschalten.

Die erste Zeile sollte also folgendermaßen aussehen:

  #!/usr/bin/perl -X


2. Bei einer .htaccess Datei
Befindet sich irgendwo im Suchpfad eine .htaccess-Datei sollte diese genauer untersucht werden. Viele Standard-.htaccess-Dateien enthalten Direktiven, die auf unseren Servern Probleme verursachen. Dazu zählen insbesondere Options, php_value und php_flag. Alle Zeilen in der .htaccess die mit diesen Direktiven beginnen, sollten Sie aus der .htaccess entfernen oder mit einer Raute (#) auskommentieren.
Einige Beispiele:

  Options +FollowSymLinks   Verboten
  php_flag register_globals_off   Verboten , diese Einstellung können Sie im Confixx unter httpd-Spezial vornehmen.

 

Zurück

nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter nilges-sytems platzhalter