neonail-database/black-screen-fix.md
2025-08-10 18:39:02 +02:00

2.8 KiB

🖥️ Schwarzer Bildschirm in Production - Lösung

🚨 Problem:

  • Seite zeigt nur schwarzen Bildschirm
  • Keine Fehlermeldung sichtbar
  • Logs zeigen unvollständige Fehler

🔍 Ursache:

Ein kritischer Fehler tritt auf, aber wird nicht angezeigt.

🔧 Lösung:

Schritt 1: Auf dem Webspace ausführen

# 1. Ins Laravel-Verzeichnis wechseln
cd /var/www/html

# 2. Black Screen Fix ausführen
./fix-black-screen.sh

Schritt 2: Manuell (falls Script nicht funktioniert)

# 1. Temporär Debug aktivieren
sed -i 's/APP_DEBUG=false/APP_DEBUG=true/' .env
php artisan config:clear

# 2. Logs leeren
> storage/logs/laravel.log

# 3. Cache komplett leeren
php artisan config:clear
php artisan route:clear
php artisan view:clear
php artisan cache:clear
php artisan optimize:clear

# 4. Composer Autoload neu generieren
composer dump-autoload --optimize

# 5. Berechtigungen prüfen
chmod -R 777 storage/
chmod -R 777 bootstrap/cache/
chmod 664 database.sqlite
chmod 644 .env

# 6. Datenbank-Verbindung testen
php artisan tinker --execute="echo 'DB Test: '; try { DB::connection()->getPdo(); echo 'OK'; } catch(Exception \$e) { echo 'FEHLER: ' . \$e->getMessage(); }"

# 7. Routen testen
php artisan route:list | head -10

# 8. Storage-Link prüfen
if [ ! -L "public/storage" ]; then
    php artisan storage:link
fi

Schritt 3: Fehlermeldung analysieren

  1. Seite aufrufen - sollte jetzt Fehlermeldung zeigen
  2. Fehlermeldung notieren
  3. Logs prüfen:
    tail -f storage/logs/laravel.log
    

Schritt 4: Häufige Fehler beheben

Fehler: "Class not found"

composer dump-autoload --optimize

Fehler: "Table not found"

php artisan migrate --force

Fehler: "Permission denied"

chmod -R 777 storage/
chmod -R 777 bootstrap/cache/

Fehler: "View not found"

php artisan view:clear

Schritt 5: Production-Modus wiederherstellen

# Debug deaktivieren
sed -i 's/APP_DEBUG=true/APP_DEBUG=false/' .env
php artisan config:clear

# Cache optimieren
php artisan optimize

🎯 Häufige Ursachen:

1. Autoload-Probleme

  • Neue Klassen nicht gefunden
  • Composer Autoload nicht aktualisiert

2. Cache-Probleme

  • Alte Konfigurationen im Cache
  • Route-Cache-Probleme

3. Datenbank-Probleme

  • Fehlende Tabellen
  • Verbindungsprobleme

4. Berechtigungs-Probleme

  • Storage nicht beschreibbar
  • Cache nicht beschreibbar

📋 Checklist:

  • Debug temporär aktiviert
  • Cache geleert
  • Autoload aktualisiert
  • Berechtigungen korrekt
  • Datenbank getestet
  • Fehlermeldung analysiert
  • Fehler behoben
  • Debug deaktiviert

🚀 Nach dem Fix:

Die Seite sollte jetzt funktionieren!