neonail-database/mail-configuration-fix.md
2025-08-10 19:09:31 +02:00

98 lines
2.7 KiB
Markdown

# 📧 Mail-Konfiguration Problem - Lösung
## 🚨 **Problem:**
- E-Mails werden nicht versendet
- Weder User noch Admin erhalten E-Mails
- Mail-Fehler in den Logs
## 🔍 **Ursache:**
SMTP-Server `mail.selfhost.de:465` ist nicht erreichbar oder falsch konfiguriert.
## 🔧 **Lösung:**
### **Schritt 1: Auf dem Webspace ausführen**
```bash
# 1. Ins Laravel-Verzeichnis wechseln
cd /var/www/html
# 2. Mail Configuration Fix ausführen
./fix-mail-config.sh
```
### **Schritt 2: Manuell (falls Script nicht funktioniert)**
```bash
# 1. Backup der .env erstellen
cp .env .env.backup.$(date +%Y%m%d_%H%M%S)
# 2. Mail-Konfiguration anpassen
sed -i 's/MAIL_MAILER=smtp/MAIL_MAILER=log/' .env
sed -i 's/MAIL_HOST=mail.selfhost.de/MAIL_HOST=127.0.0.1/' .env
sed -i 's/MAIL_PORT=465/MAIL_PORT=1025/' .env
sed -i 's/MAIL_USERNAME=.*/MAIL_USERNAME=null/' .env
sed -i 's/MAIL_PASSWORD=.*/MAIL_PASSWORD=null/' .env
sed -i 's/MAIL_ENCRYPTION=ssl/MAIL_ENCRYPTION=null/' .env
sed -i 's/MAIL_FROM_ADDRESS=.*/MAIL_FROM_ADDRESS="noreply@neonail.vogt.de.com"/' .env
sed -i 's/MAIL_FROM_NAME=.*/MAIL_FROM_NAME="NeoNail DB"/' .env
# 3. Cache leeren
php artisan config:clear
# 4. Test-Mail senden
php artisan tinker --execute="use Illuminate\Support\Facades\Mail; Mail::raw('Test-Mail von NeoNail DB - ' . now(), function(\$message) { \$message->to('test@example.com')->subject('Test-Mail'); }); echo 'Test-Mail gesendet';"
```
### **Schritt 3: E-Mails in Logs prüfen**
```bash
# Mail-Logs anzeigen
tail -f storage/logs/laravel.log | grep -i mail
# Oder alle Logs durchsuchen
grep -i "mail\|email" storage/logs/laravel.log
```
## 🎯 **Was passiert jetzt:**
### **Option 1: Log-Modus (empfohlen für Production)**
- E-Mails werden in `storage/logs/laravel.log` geschrieben
- Keine echten E-Mails versendet
- System funktioniert ohne SMTP-Server
### **Option 2: Echte E-Mail-Versendung**
Für echte E-Mail-Versendung SMTP-Server konfigurieren:
```env
MAIL_MAILER=smtp
MAIL_HOST=ihr-smtp-server.com
MAIL_PORT=587
MAIL_USERNAME=ihr-username
MAIL_PASSWORD=ihr-passwort
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="noreply@ihre-domain.com"
MAIL_FROM_NAME="NeoNail DB"
```
## 📋 **Mail-Logs prüfen:**
```bash
# Letzte Mail-Einträge anzeigen
tail -n 50 storage/logs/laravel.log | grep -i mail
# Spezifische Mail suchen
grep -i "willkommens-e-mail" storage/logs/laravel.log
```
## 🚀 **Nach dem Fix:**
1. **Neuen User erstellen** - E-Mail wird in Logs geschrieben
2. **Logs prüfen** - E-Mail-Inhalt anzeigen
3. **Bei Bedarf** - SMTP-Server für echte E-Mails konfigurieren
## ⚠️ **Wichtige Hinweise:**
- **Log-Modus** ist sicher für Production ohne SMTP-Server
- **E-Mails sind in Logs verfügbar** für Debugging
- **SMTP-Konfiguration** nur bei verfügbarem Mail-Server