Mailversand aus dem Webhosting

Der Mailversand über Ihre Site ist grundsätzlich möglich. Auf dieser Seite werden verschiedene Methoden des Mail-Versands beschrieben. Welche die beste Wahl ist, hängt von Ihren Anforderungen ab. Neben Ihrer Botschaft erhöht sich Ihr Mail-Erfolg mit

  • einer korrekten Absender-Adresse,
  • dem Beachten Ihres Mail-Quotas, und
  • dem Versand signierter Mails.


Methoden

Man kann Mail auf viele Arten versenden, die unterschiedliche Vor- und Nachteile mit sich bringen. In den folgenden Beschreibungen wird auch versucht, einige Grundlagen zu erklären.    

Die schlechteste

Die schlechteste Methode ist, wenn Ihre Anwendung PHPs mail()-Funktion bloß mit Empfängerin, Betreff und Nachrichtentext benutzt. Ihre Anwendung kann zwar wissen, ob die Mail zum Weitertransport angenommen wurde. Das ist nur ein erster Schritt ist, der lokal passiert und fast immer gelingt. Die Anwendung kann nicht wissen, ob die Mail tatsächlich an das Empfangs-Postfach geliefert wurde, und Sie werden das auch nicht. Gründe für fehlschlagende Auslieferungen gibt es viele:

  • Das Empfängerinnen-Postfach gibt es nicht (unbekanntes Konto wegen Tippfehler, oder die Person hat die Einrichtung verlassen).
  • Das Empfängerinnen-Postfach ist voll.
  • Der empfangende Mail-Provider akzeptiert keine unsignierten Mails. Das ist der Fall bei gmail oder GMX; andere, beliebte Mail-Provider ziehen nach.

Die Server, die die Mail weiterverarbeiten, versuchen ihr Bestes, um Ihnen Berichte über Fehler zukommen zu lassen. Aber wenn Sie keinen Envelope Sender (siehe unten) gesetzt haben, gehen alle diese hilfreichen Meldungen verloren.  


(Haken)  Benutzen, wenn …

  • … Sie einen festen Satz von Empfängerinnen-Adressen haben, von denen Sie wissen, dass sie Mails von Ihrer Anwendung empfangen
  • … Sie nicht mehr al 50 Mails pro Tag senden wollen
  • … es Sie nicht interessiert, ob die Mails tatsächlich ankommen.

(Fehler) Nicht benutzen, wenn …

  • … Sie über Fehler informiert werden wollen,
  • … Sie Mails an Dienstleister wie gmail et al. versenden müssen,
  • … Sie mehr als 50 Mails pro Tag versenden wollen.


Geht so

Ihre Anwendung benutzt PHPs mail()-Funktion und Sie haben zusätzlich eine korrekte Absenderadresse gesetzt.

Bei E-Mail werden zwei Absender-Adressen benutzt – eine im Header einer E-Mail ("Header-From") und eine im Umschlag einer E-Mail ("Envelope-From"). Mehr Informationen dazu gibt es im Abschnitt Versand einer E-Mail in der Dokumentation zu Mail.

  1. Die wichtigste Einstellung, die Sie vornehmen müssen, ist die Absender-Adresse (From-Header). Es muss eine gültige, funktionierende E-Mail-Adresse sein. Sie sollten Nachrichten, die an diese Adresse geschickt werden, tatsächlich lesen können. Gut geeignet ist die E-Mail-Adresse der Funktionskennung, konfiguriert als Weiterleitung. Benutzen Sie auf keinen Fall Adressen öffentlicher Webmail-Anbieter bzw. MWN-fremder Domains. Verhindern Sie, dass Skripte oder Formulare beliebige Adressen aus Eingaben von Benutzerinnen als From-Header einsetzen.
  2. Die selbe Absenderadresse sollte dann auch für den Envelope-From benutzt werden, alternativ kann es eine andere funktionierende E-Mail-Adresse sein. An die Envelope-From-Adresse werden Probleme beim E-Mail-Versand zurück gemeldet. Wenn Sie den Envelope-From  nicht einstellen, wird Ihre Mail mit einer automatisch erstellten, ungültigen Absender-Adresse versendet. Das führt bei einigen Mail-Anbietern bereits zur Abweisung von Mails. Sie werden darüber nicht informiert, denn die Mails über Zustellungs-Fehler gehen verloren.

Bei den verschiedenen Webanwendungen wird die Envelope-From-Adresse mit verschiedenen Bezeichnungen geführt: Return-Path, Sender, Envelope Sender etc. Oft gibt es die Option, für beide Absender-Adressen den selben Wert zu benutzen.

  • PHP ohne Schnickschnack: Bei PHP können Sie die mail()-Funktion verwenden, um E-Mails zu versenden. Der From-Header kann unter anderem über den Parameter additional_headers gesetzt werden. Der Envelope-sender muss dann via additional_params und "-f absenderadresse" gesetzt werden (siehe "Example #4 Sending mail with an additional command line parameter.").
  • PHP mit Framework: Wenn Sie ein Framework verwenden, sollte die Konfiguration der Mail-Parameter in der Dokumentation des Frameworks beschrieben sein. Viele Frameworks verwenden PHPMailer, bei dem die Eigenschaft $Sender gesetzt werden kann.
  • Wordpress mit "WP Mail SMTP": Mit dem Plugin WP Mail SMTP kann man den „Other SMPT“-Mailer benutzen und dessen Einstellungen bearbeiten. Tragen Sie bei From Email Ihre Absenderadresse ein, und aktivieren den Haken bei Force From Email. Ebenso aktivieren Sie den Haken bei Set the return-path to match the From Email.
  • Wordpress generell: Die Einstellung des Envelope-from ist die Hauptfunktion des Plugins „Stop WP Emails Going to Spam“.

(Haken) Benutzen, wenn …

  • … Sie einen festen Satz von Empfängerinnen-Adressen haben, von denen Sie wissen, dass sie Mails von Ihrer Anwendung empfangen können
  • … Sie über Fehler informiert werden wollen,

  • … Sie mehr als 250 Mails pro Tag versenden wollen, oder ein noch höheres Limit vereinbaren wollen.

(Fehler) Nicht benutzen, wenn …

  • … Sie Mails an Dienstleister wie gmail et al. versenden müssen.


Gut

Hier benutzt Ihre Anwendung nicht die PHP-Funktion mail(). Statt dessen besorgen Sie sich eine der hier beschriebenen Mailbox-Optionen, oder eine Mailbox eines anderen Hoster, und Ihre Anwendung benutzt SMTP um sich mit einem externen Mailserver zu verbinden und E-Mails über ein Konto dort zu versenden. Viele Anwendungen können so konfiguriert werden, dass sie SMTP benutzen. Falls Sie selber entwickeln, sehen Sie sich PHPMailer an oder eine der Alternativen, die auf deren Site genannt werden.

(Haken) Benutzen, wenn…

  • … Sie Mails an Dienstleister wie gmail et al. versenden müssen,
  • … Sie über Fehler informiert werden wollen,

  • … Sie mehr als 250 Mails pro Tag versenden wollen, oder ein noch höheres Limit vereinbaren wollen,
  • … Ihre Anwendung die Mailbox selber auslesen soll (Fortgeschritten)

(Fehler) Nicht benutzen, wenn …

  • … Ihnen eine der anderen Methoden taugt. 




Was Sie bedenken müssen: Mail-Quota

Am Mail-Ausgangs-Server gibt es Begrenzungen für das E-Mail-Aufkommen für jede Site bzw. Absender. Das Ziel dieser Begrenzungen ist es, den Missbrauch von ungenügend gesicherten Anwendungen durch Spammerinnen zu unterbinden bzw. die Folgen so abzumildern, dass der Mail-Versand Anderer nicht beeinträchtigt wird.

Die Begrenzungen sind so eingerichtet, dass überzählige Mails in eine Warteschlange eingereiht werden, bis nach Verstreichen des 24-Stunden-Zeitfensters das Quota wieder aufgefüllt wird. Wenn also das Tageslimit überschritten wird, werden die überzähligen Mails am nächsten Tag verschickt. Für den Standard-Ausgangsserver gelten die folgenden Limits.

  • Wenn der Mailversand von Ihrer Site die oben genannte schlechteste Methode benutzt, beträgt das Limit 50 Mails pro 24 Stunden. Beachten Sie, dass jede Empfängeradresse (To, CC, BCC) als jeweils eine Mail gezählt wird.
  • Wenn die Absender-Adressen (Header-from und Envelope-from) wie oben bei "Geht so" beschrieben eingestellt sind, gilt automatisch ein Sendelimit von 250 Mails pro 24 Stunden.
  • In begründeten Fällen können Sie eine weitere Erhöhung beantragen: Legen Sie einen Incident mit Service 'Webhosting' an. Benutzen Sie die Variante „Self Service“; also mit Login. Das dient uns als Nachweis der Berechtigung. Die Funktionskennung der Website sollte dann als „betroffene Kennung“ auswählbar sein. Ihre Anfrage sollte den Domainnamen der Site sowie die benutzte Absenderadresse enthalten und natürlich das gewünschte neue Limit.

Siehe auch