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

137 lines
2.8 KiB
Markdown

# 🖥️ 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**
```bash
# 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)**
```bash
# 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:**
```bash
tail -f storage/logs/laravel.log
```
### **Schritt 4: Häufige Fehler beheben**
#### **Fehler: "Class not found"**
```bash
composer dump-autoload --optimize
```
#### **Fehler: "Table not found"**
```bash
php artisan migrate --force
```
#### **Fehler: "Permission denied"**
```bash
chmod -R 777 storage/
chmod -R 777 bootstrap/cache/
```
#### **Fehler: "View not found"**
```bash
php artisan view:clear
```
### **Schritt 5: Production-Modus wiederherstellen**
```bash
# 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!