Die MAIL-Variablen von Laravel einrichten
Laravel liest seine Maileinstellungen aus der Umgebungsdatei Ihrer Anwendung. Mit einer Handvoll MAIL-Variablen lassen Sie die gesamte Post Ihrer Anwendung — Registrierungen, Passwortzurücksetzungen, Benachrichtigungen aus einer Warteschlange — über 2Mail rausgehen, ohne eine einzige Codezeile zu ändern.
Was Sie brauchen
- den Servernamen aus Ihrem 2mail-Konto
- einen SMTP-Login mit Passwort, im Dashboard für diese Anwendung angelegt; verwenden Sie für Test- und Produktionsumgebung je einen eigenen Login
- eine Absenderadresse auf einer Domain, die in Ihrem Konto als Versanddomain hinterlegt ist
Schritt 1: die Variablen ausfüllen
Öffnen Sie die Umgebungsdatei Ihrer Anwendung und stellen Sie den Mailer auf SMTP. Ausgefüllt sieht das so aus:
MAIL_MAILER=smtp, MAIL_HOST=der Servername aus Ihrem 2mail-Konto, MAIL_PORT=587, MAIL_USERNAME=Ihr SMTP-Login, MAIL_PASSWORD=Ihr Passwort, MAIL_ENCRYPTION=tls, MAIL_FROM_ADDRESS=eine Adresse auf Ihrer Versanddomain, MAIL_FROM_NAME=der Name Ihres Unternehmens.
Setzen Sie Werte mit Leerzeichen, etwa den Absendernamen, in Anführungszeichen. Belassen Sie die Verschlüsselung auf tls; das ist die STARTTLS-Einstellung, die zu Port 587 gehört.
Schritt 2: den Konfigurations-Cache erneuern
Läuft Ihre Produktionsumgebung mit einer gecachten Konfiguration, liest Laravel die Umgebungsdatei nicht erneut. Erneuern Sie den Konfigurations-Cache nach jeder Änderung, sonst testen Sie mit den alten Werten und suchen einen Fehler, den es gar nicht gibt.
Schritt 3: testen
Versenden Sie eine einfache Nachricht an eine Adresse außerhalb Ihrer Domain, zum Beispiel aus der interaktiven Konsole von Laravel oder über eine bestehende Benachrichtigung. Prüfen Sie danach das Zustellprotokoll im Dashboard von 2Mail: Dort sehen Sie, ob die Nachricht uns erreicht hat und was der empfangende Server geantwortet hat.
Schritt 4: die Warteschlange
Versenden Sie E-Mails über eine Warteschlange, findet der eigentliche Versand im Worker statt und nicht im Webrequest. Starten Sie die Worker nach einer Änderung der Variablen neu; sonst laufen sie mit den alten Einstellungen weiter. Bei einem Fehler im Worker erscheint die Nachricht in der Tabelle der fehlgeschlagenen Jobs, mitsamt der Meldung unseres Relays.
Häufige Fehler
- Verbindung konnte nicht aufgebaut werden — im Servernamen steckt ein Tippfehler, oder das Hosting blockiert Port 587. Bitten Sie Ihren Hoster, diesen Port freizugeben.
- Absender abgelehnt — die Absenderadresse in einem einzelnen Mailable überschreibt die globale Adresse und verwendet eine andere Domain.
- Funktioniert lokal, nicht in der Produktion — der Konfigurations-Cache wurde nicht erneuert, oder die Produktion nutzt eine andere Umgebungsdatei mit alten Werten.
Mehr zu dieser Anbindung steht auf SMTP für Laravel. Möchten Sie lieber ohne SMTP versenden und je Nachricht einen Status zurückbekommen, schauen Sie sich die E-Mail-API an.
Klappt es nicht?
Schicken Sie uns über Kontakt die Meldung aus Ihrer Logdatei oder aus der Tabelle der fehlgeschlagenen Jobs. Dort steht die Antwort unseres Relays wörtlich drin.
Läuft es bei Ihnen anders als oben beschrieben, oder bleiben Sie hängen? Nehmen Sie Kontakt auf und halten Sie Ihre Domain oder Kundennummer bereit, dann schauen wir gemeinsam nach.
Support kontaktieren