Home | Über uns | Impressum | AGB | Sitemap 

FAQ / Hilfe

Suchen:     Erweiterte Suche
Kategorien durchblättern:



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

Gesehen: 8076
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
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
Also read
document chmod / Dateirechte

Weitere Fragen in dieser Kategorie
document Wie verwende ich PHP5
document Was bedeutet: "Warning: fopen(): URL file-access is disabled in the server configuration" ?
document Ich möchte auch Dateien mit anderen Endungen (bspw. .html) durch PHP interpretieren lassen.
document Ich benötige Safe_Mode, register_globals oder mod_rewrite u.v.m.
document Wie verwende ich PHP4
document Wie verwende ich PHP5.3, PHP5.4 und PHP5.5
document Loginprobleme Wordpress und Joomla
document Wie verwende ich MySQL 5.5 oder MySQL 5.6