Einführung

Auf der Seite Globale Konfiguration, im Bereich Server, gibt es eine Option zur Auswahl eines Mail-Übertragungsagenten. Die Standardeinstellung ist PHP Mail. Falls dies nicht funktioniert, wird möglicherweise empfohlen, SMTP zu verwenden. Es nutzt denselben Mechanismus wie Ihre Mailanwendung. Es gibt mehrere Einstellungen, die korrekt gesetzt sein müssen. Kurz gesagt:

Zur Globalen Konfiguration gehen und den Reiter Server auswählen. Den Bereich E-Mail am unteren Ende des Formulars suchen.

  • Mailer auf SMTP setzen. Es erscheinen mehrere weitere Felder
  • SMTP-Host Dies ist standardmäßig localhost, was jedoch wahrscheinlich nicht funktioniert. Es muss auf den Host gesetzt werden, der Ihre ausgehende Mail verarbeitet, zum Beispiel ein Gmail-Benutzerkonto.
  • SMTP-Port Der Standardwert ist 25. Prüfen, ob dies der vom SMTP-Host erwartete Wert ist.
  • SMTP-Sicherheit Der Standardwert ist Keine, wahrscheinlich wird jedoch STARTTLS benötigt.
  • SMTP-Authentifizierung Dies ist möglicherweise nicht erforderlich, wenn ein Heimnetzwerk verwendet wird, das keine Authentifizierung für ausgehende E-Mails erwartet. Andernfalls:
  • SMTP-Benutzername und SMTP-Passwort die Werte eingeben, die zum Zugriff auf das E-Mail-Benutzerkonto über das Internet verwendet werden.
  • Die Schaltfläche Testmail senden auswählen.

Gmail verwenden

Falls ein funktionierendes Gmail-Benutzerkonto vorhanden ist, kann Gmail als Mailserver verwendet werden, indem es in der globalen Konfiguration eingestellt wird.

Im Reiter Server Folgendes einstellen:

  • Mailer: SMTP
  • SMTP-Host: smtp.gmail.com
  • SMTP-Port 465
  • SMTP-Sicherheit: SSL/TLS
  • SMTP-Authentifizierung: Ja
  • Die nächsten beiden Zeilen mit den eigenen Informationen ausfüllen. Es muss ein app-spezifisches Passwort (ASP) verwendet werden, wie unten beschrieben.
  • SMTP-Benutzername: der eigene Gmail-Benutzername
  • SMTP-Passwort: das generierte app-spezifische Passwort (ASP), wie unten beschrieben.

Die folgenden Kombinationen funktionieren ebenfalls:

  • SMTP-Port 587
  • SMTP-Sicherheit: STARTTLS
  • SMTP-Port 25
  • SMTP-Sicherheit: STARTTLS

Das SSL-Modul muss in Apache nicht aktiviert werden.

Die OpenSSL-Erweiterung muss in PHP aktiviert sein. Details finden sich auf der php.net Installationsseite.

Bei Verwendung von WAMP unter Windows ist das openssl-Modul standardmäßig nicht aktiviert und muss aktiviert werden. Gehen Sie dazu wie folgt vor:

  1. Die Datei php.ini öffnen und die Zeile extension=php_openssl.dll durch Entfernen des Semikolons ; am Zeilenanfang einkommentieren.
  2. Die Datei php.ini speichern und den Apache-Dienst neu starten.

Hinweis: Wird in Gmail die zweistufige Verifizierung verwendet, muss ein neues Passwort unter Einstellungen – Konten – Kontoeinstellungen ändern – Weitere Google-Konto-Einstellungen – Sicherheit – Zweistufige Verifizierung – Anwendungsspezifische Passwörter verwalten hinzugefügt werden.

Wird das neue anwendungsspezifische Passwort (ASP) in Gruppen von vier Zeichen, durch Leerzeichen getrennt, angezeigt, darauf achten, dass die Leerzeichen NICHT in das SMTP-Passwort in den Mailserver-Einstellungen von Joomla eingegeben werden.

Fehlersuche

Wird die E-Mail nicht gesendet oder kommt sie nie an:

  • Plugins im Dashboard → Bereich Website auswählen.

  • Das Plugin System – Debug suchen, aktivieren und konfigurieren:

  • Erlaubte Gruppen auf Super Benutzer setzen, um die Debug-Ausgabe auf die eigene Anmeldesitzung im Backend und im Frontend zu beschränken. Soll im Frontend nicht als Super Benutzer angemeldet werden, eine eigene Benutzergruppe für die Testaktivitäten anlegen und diese Benutzergruppe aus der Liste der erlaubten Benutzergruppen auswählen.

  • Speichern & Schließen

  • Globale Konfiguration im Dashboard → Bereich Website auswählen.

  • Im Reiter System System debuggen auf Ja setzen.

  • Im Reiter Server Fehler berichten auf Maximum setzen.

  • Im Reiter Protokollierung den Inhalt von Pfad zum Protokollverzeichnis notieren, in der Regel [irgendwas]/administrator/logs.

  • Fast alles protokollieren auf Ja setzen.

  • Im Bereich Benutzerdefinierte Protokollierung das Feld Protokollkategorien auf mail setzen (ohne Anführungszeichen).

  • Speichern, um die Debug-Einstellungen zu speichern.

  • Im Reiter Server die Schaltfläche Testmail senden am unteren Seitenrand auswählen.

Gibt es Probleme im Code während des Tests, sollte ein Stack Trace angezeigt werden, der bei der Diagnose des Problems helfen kann. Außerdem im Protokollverzeichnis nach einer Datei mit einem Namen wie administrator/logs/everything.php suchen und diese mit einem Texteditor öffnen. Es kann hilfreich sein, zu sehen, was beim Senden der Nachricht protokolliert wurde.