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

2.7 KiB

📧 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

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

# 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

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

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:

# 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