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
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