Zum Hauptinhalt springen

500-Fehler & Debugging

So diagnostizieren und beheben Sie 500 Internal Server Errors.


Schritt 1: Das Log prüfen

Der wichtigste Schritt. Laravel protokolliert alle Fehler in:

tail -100 storage/logs/laravel.log

Dadurch wird Ihnen die genaue Fehlermeldung, Datei und Zeilennummer angezeigt.


Schritt 2: Debug-Modus aktivieren (vorübergehend!)

APP_DEBUG=true

Seite aktualisieren — Sie sehen eine detaillierte Fehlerseite mit:

  • Fehlermeldung
  • Stack-Trace
  • Anfragedetails
  • Umgebungsinformationen
warnung

APP_DEBUG=false sofort nach dem Debugging setzen!


Häufige 500-Fehler

„The stream or file could not be opened"

Ursache: Problem mit Storage-Berechtigungen.

sudo chmod -R 775 storage bootstrap/cache
sudo chown -R www-data:www-data storage bootstrap/cache

„No application encryption key has been specified"

Ursache: Fehlender oder ungültiger APP_KEY.

php artisan key:generate

„SQLSTATE[HY000] Connection refused"

Ursache: Datenbankverbindung fehlgeschlagen.

.env-Datenbankeinstellungen prüfen und sicherstellen, dass MySQL läuft.

„Class 'X' not found"

Ursache: Fehlende Composer-Abhängigkeiten.

composer install --no-dev --optimize-autoloader
php artisan config:clear

„View [x] not found"

Ursache: Fehlende oder beschädigte View-Datei.

php artisan view:clear

Falls die Datei wirklich fehlt, aus dem Originalpaket neu hochladen.

„Maximum execution time exceeded"

Ursache: Lang laufende Operation (Backup, Migration, KI-Analyse).

PHP-Timeout erhöhen:

max_execution_time = 300

Debug-Informationen für den Support sammeln

Wenn Sie einen Fehler melden, fügen Sie Folgendes hinzu:

php -v                          # PHP-Version
php artisan --version # Laravel-Version
mysql --version # MySQL-Version
cat .env | grep -E "^(APP_|DB_|MAIL_|QUEUE_)" # Konfiguration (ohne Passwörter!)
tail -50 storage/logs/laravel.log # Aktuelle Fehler

Nächste Schritte