Wissensdatenbank · PHP
So beheben Sie einen Fehler „500 Internal Server Error“
Zuletzt aktualisiert am 2025-06-08
Problem: 500 Internal Server Error
Dieser Fehler tritt häufig auf, wenn Kunden Skripte auf unseren Server migrieren. Der Kunde versucht, ein PHP-Skript zu installieren (wie Drupal, Magento, Moodle, WordPress, Concrete5 usw.) aus Quelldateien oder aus einer früheren LAMP-Installation mit mod_php. Beim Testen der Installation auf dem IndicHosts-Server wird im Webbrowser der Fehler '500 Internal Server Error" angezeigt.
Häufige Ursachen des Problems sind:
- Verzeichnis- und Dateiberechtigungen
- Verzeichnis- und Dateieigentümer
- Direktiven in der .htaccess, wie php_value oder php_flag
Ursache & Hintergrund: Da unser Server Apache mit suPHP einsetzt und kein mod_php verwendet, werden PHP-Skripte als 'username' statt als 'apache' oder 'nobody' ausgeführt. Daher müssen alle Ihre Skriptdateien und Unterverzeichnisse dem Benutzernamen gehören. Außerdem ist die Dokumentation der meisten Skripte auf einfache LAMP-Umgebungen ausgerichtet (Linux, Apache, MySQL, PHP) mit mod_php. Die Dokumentation der Skripte empfiehlt, bestimmte Verzeichnisse und Dateien für alle beschreibbar zu machen (d. h. 777 oder 666.). PHP-Dateien werden als Teil eines Quellarchivs häufig mit den ausführbaren Berechtigungen 777 oder 775 ausgeliefert.
Auf IndicHosts-Servern dürfen Sie KEINE für alle beschreibbaren Dateien oder Verzeichnisse haben (mit Berechtigungsstufen wie 0777, 0666, 0770, 0660 usw.). Unsere PHP-Skriptdateien (.php) dürfen NICHT ausführbar sein (mit Berechtigungsstufen wie 0755) auch dann nicht, wenn die offizielle Skriptdokumentation dies empfiehlt. Dies ist eine zwingende Sicherheitsanforderung für PHP-Skripte auf den Servern von IndicHosts.
Um den Fehler 500 Internal Server Error auf dem Server von IndicHosts.net zu beheben, gehen Sie daher wie folgt vor:
- Alle Verzeichnisse und Unterverzeichnisse sollten auf folgende Berechtigung gesetzt werden: die Berechtigung level of 0755. You can correct this using FTP or by running this command in cPanel >> Terminal
chmod 755 directory - Alle Dateien im Verzeichnis und in den Unterverzeichnissen sollten gesetzt werden auf die Berechtigung level of 0644. You can correct this using FTP or by running this command in cPanel >> Terminal
chmod 644 filename.php - Prüfen Sie, ob in Ihrer Datei php_value- oder php_flag-Direktiven vorhanden sind, und entfernen Sie diese .htaccess Datei. (indem Sie die Zeile entfernen oder mit dem Präfix # auskommentieren)
- Dateien und Verzeichnisse sollten dem Benutzer gehören, zu dem sie gehören. Lautet der Benutzername „robert“, sollten Besitzer und Gruppe der Dateien wie folgt gesetzt sein:
robert:robert. Sie können dies beheben, indem Sie diesen Befehl in cPanel ausführen >> Terminal >> (wenn) Falls das Terminal bei Ihnen nicht aktiviert ist, erstellen Sie ein Ticket und bitten Sie uns, das Terminal für Ihre Domain zu aktivieren)chown username:username directorychown username:username filename.php - Eine falsche PHP-Version führt zu „HTTP Error 500“ in Google Chrome. Mitunter erfüllt die für die Domain aktivierte PHP-Version nicht die Anforderungen des Skripts. Sie können den PHP Selector oder den MultiPHP Manager in cPanel verwenden, um die PHP-Version zu ändern. Wir bieten unseren Kunden PHP-Versionen von 4.4 bis 8.1 zur Auswahl für ihre Domain an.
- Eine Sperre durch ModSecurity führt zu „HTTP Error 500“ Google Chrome. Navigieren Sie zu cPanel >> ModSecurity und Deaktivierung von ModSecurity auf der Domain. Wenn der Fehler verschwindet, erhöhen Sie ein Ticket mit dem technischen Support und bitten Sie ihn um die ModSecurity-Regel, die die Ausnahme verursacht hat, und wenden Sie sich dann an den Skriptentwickler und bitten Sie ihn, sein Skript zu reparieren.
- Lesen Sie die Skriptdokumentation und stellen Sie sicher, dass die PHP-Umgebung die Mindestanforderungen des Skripts erfüllt (PHP-Erweiterungen, Optionen und Variablen aktiviert sind). Wie Sie bei IndicHosts eine PHP-Umgebung pro Domain oder pro Verzeichnis einrichten, erfahren Sie in unserem Anleitung zur PHP-Einrichtung. (Hinweis: Sollten Sie feststellen, dass die Anforderungen des Skripts zu unserem Einrichtungsartikel hier im Widerspruch stehen, wenden Sie sich bitte an uns, um zu klären, wie Sie vorgehen sollten.)
Nachdem Sie das oben Genannte behoben haben, laden Sie die URL des Skripts neu. Besteht der Fehler weiterhin, erstellen Sie bitte ein Ticket mit den Angaben zum Skript.
Tipp: Die Datei error_log im Skriptverzeichnis zeigt den genauen PHP-Fehler hinter dem Fehler 500 (Internal Server Error)
Tell us what you need
Compare available plans or describe your workload so we can discuss a suitable starting point.