neonail-database/test-mail-connection.sh
2025-08-10 19:09:31 +02:00

69 lines
2.4 KiB
Bash
Executable File

#!/bin/bash
# NeoNail DB - Mail Connection Test Script
# Testet die SMTP-Verbindung mit den korrekten Daten
echo "📧 NeoNail DB - Mail Connection Test"
echo "===================================="
# Prüfe, ob wir im richtigen Verzeichnis sind
if [ ! -f "artisan" ]; then
echo "❌ Fehler: artisan Datei nicht gefunden. Bitte führen Sie das Script im Laravel-Root-Verzeichnis aus."
exit 1
fi
echo "🔍 Schritt 1: Aktuelle Mail-Konfiguration prüfen..."
php artisan tinker --execute="echo 'Mail-Konfiguration:'; echo 'MAIL_MAILER: ' . config('mail.default'); echo 'MAIL_HOST: ' . config('mail.mailers.smtp.host'); echo 'MAIL_PORT: ' . config('mail.mailers.smtp.port'); echo 'MAIL_USERNAME: ' . config('mail.mailers.smtp.username'); echo 'MAIL_FROM: ' . config('mail.from.address');"
echo ""
echo "🔍 Schritt 2: Mail-Logs prüfen..."
echo "Letzte Mail-Fehler:"
tail -n 10 storage/logs/laravel.log | grep -i mail
echo ""
echo "🔍 Schritt 3: SMTP-Verbindung testen..."
php artisan tinker --execute="
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Log;
try {
echo 'Teste SMTP-Verbindung...';
// Test-Mail senden
Mail::raw('Test-Mail von NeoNail DB - ' . now() . '\n\nDiese Mail testet die SMTP-Verbindung zu mail.selfhost.de', function(\$message) {
\$message->to('oliver@vogt.de.com')
->subject('NeoNail DB - SMTP Test')
->from(config('mail.from.address'), config('mail.from.name'));
});
echo '✅ Test-Mail erfolgreich gesendet!';
echo '📧 Mail wurde an oliver@vogt.de.com gesendet';
} catch(Exception \$e) {
echo '❌ Mail-Fehler: ' . \$e->getMessage();
echo '🔍 Fehler-Details: ' . \$e->getTraceAsString();
// Fehler in Log schreiben
Log::error('Mail-Test fehlgeschlagen: ' . \$e->getMessage());
}
"
echo ""
echo "🔍 Schritt 4: Mail-Logs nach Test prüfen..."
echo "Neue Mail-Einträge:"
tail -n 5 storage/logs/laravel.log | grep -i mail
echo ""
echo "🎯 SMTP-Test abgeschlossen!"
echo ""
echo "📋 Falls der Test fehlschlägt:"
echo " 1. SMTP-Daten in .env prüfen"
echo " 2. Firewall-Einstellungen prüfen"
echo " 3. Port 465 (SSL) ist erreichbar"
echo " 4. Username/Password korrekt"
echo ""
echo "📋 Falls der Test erfolgreich ist:"
echo " 1. E-Mail sollte bei oliver@vogt.de.com ankommen"
echo " 2. Mail-System funktioniert korrekt"
echo " 3. User-Registrierung sollte E-Mails senden"