Nutzen Sie die verschiedenen Versandvarianten um E-Mails z.B. bei Anmeldung oder Abmeldung von einer Empfängerliste versenden zu lassen. Als Standard vordefiniert sind die Versandvarianten "Standard PHP mail()" und "Standard SMTP Direct (MX)". Die Versandvariante "Standard PHP mail()" sollte auf jedem Webserver verwendet werden können. Verwenden Sie die Variante "Standard SMTP Direct (MX)" um E-Mails direkt an den Server des Empfängers ausliefern zu lassen. Diese Variante sollte nicht verwendet werden, da der Server des Empfängers nicht immer erreichbar sein muss.
Name der Versandvariante | Vergeben Sie einen eindeutigen Namen für die
Versandvariante.
|
||||||||||
Typ der Versandvariante | Wählen Sie den Typ der Versandvariante. Je nach gewählten
Typ der Versandvariante sind verschiedene weitere Parameter notwendig bzw.
änderbar.
Zur Verfügung stehen:
|
||||||||||
Limit der Versandvariante | Das angegebene Limit wird beim Versand von E-Mailings
berücksichtigt, falls mehrere Versandvarianten gewählt und mit einem
Limit versehen sind. Geben Sie einen Wert von 0 an, um die Versandvariante
nicht zu limitieren.
|
||||||||||
Absender-E-Mail-Adresse für die Versandvariante | Erfordert der Server eine spezielle Absender-E-Mail-Adresse
um E-Mails zu versenden, dann kann diese hier definiert werden. Diese
Angabe hat Vorrang vor allem Absender-E-Mail-Adressen, die Sie für
Formulare, Mailings und Responder definieren.
|
Einstellungen für den Versand mit mehreren
Threads
Dies ist eine Profi-Funktion und sollte nur bei einem eigenen Server verwendet werden! Voraussetzung: PHP 5.3 oder neuer mit cURL Beachten Sie unbedingt die Hinweise am Ende dieser Seite.
|
|
multi-threaded Versand verwenden | Aktivieren Sie diese Einstellung, um die Versand mit
mehreren Threads zu aktivieren.
|
Anzahl Versandthreads
|
Geben Sie an wie viele Threads = http(s)://-Aufrufe gleichzeitig für den Versand der E-Mails verwendet werden sollen. |
Maximale Anzahl E-Mails, die pro Versandthread versendet werden dürfen | Geben Sie die maximale Anzahl E-Mails an, die pro
Versand-Thread = http(s)://-Aufruf, versendet werden sollen. Wurde die
Anzahl E-Mails versendet, wird ein neuer Versand-Thread =
http(s)://-Aufruf ausgeführt, falls noch E-Mails zu versenden sind.
|
Einstellungen für den Versand per PHP mail() | |
Zusatzparameter z.B. -f <E-Mail-Adresse> | Diese Angabe kann für die PHP mail() Anweisung notwendig
sein, falls der E-Mail-Versand verweigert wird. In den FAQ Ihres
Webpräsenzanbieters werden Sie Informationen finden, falls ein
Zusatzparameter notwendig ist.
Die definierten Zusatzparameter werden nur verwendet, wenn der PHP Safe mode deaktiviert ist.
|
Einstellungen für den Versand über Postausgangsserver/SMTP-Server | |
SMTP HELO Name | Geben Sie den SMTP HELO Namen ein, dieser wird beim
Verbindungsaufbau zum Server verwendet. Dieser Name muss eine gültige
Domain sein.
|
Mehrere E-Mails während einer Verbindung zum SMTP-Server versenden | Aktivieren Sie diese Einstellung, damit über eine
hergestellte SMTP-Verbindung mehrere E-Mails versendet werden sollen. Die
Empfehlung ist die Einstellungen zu deaktivieren, auch wenn dadurch durch
das Script sehr viele TCP/IP-Verbindungen hergestellte werden.
|
Pipelining verwenden | Pipelining ist eine spezielle Art der Kommunikation um an
den Server mehrere Anweisungen zu senden und nicht auf eine Antwort zu
warten. Es ist empfehlenswert diese Einstellung zu deaktivieren, da es
schwer ist etwaige Kommunikationsfehler zu finden.
|
Zeitüberschreitung/Timeout | Geben Sie an wann bei Nicht-Reaktion des Zielservers die
Verbindung abgebrochen werden soll. Die Standard-Einstellung ist 0, d.h.
es wird niemals die Verbindung abgebrochen.
|
Name des Postausgangsservers/SMTP-Servers | Geben Sie den Namen des Postausgangsservers/SMTP-Servers
korrekt ein. Der Name kann ein auslösbarer Name z.B. mx.freenet.de oder
eine IP-Adresse sein.
|
Server erfordert eine sichere Verbindung (SSL) | Aktivieren Sie diese Einstellung, wenn der Server eine
sichere und verschlüsselte Verbindung erfordert. Diese Funktion sollte
nicht verwendet werden, da der Verbindungsaufbau längere Zeit benötigt.
Hinweis:
|
Ports des Postausgangsservers/SMTP-Servers | Ändern Sie die Angabe des Ports nur, falls Ihr Provider
einen anderen Port vorgibt. Der Standard-Port ist 25.
|
Authentifizierung beim Postausgangsservers/SMTP-Servers notwendig | Aktivieren Sie diese Einstellung zur Aktivierung der
SMTP-Authentifizierung und geben Sie Benutzername/Kontoname und Passwort
für ein Postfach beim Provider korrekt ein. Bei Verwendung von externen
Servern ist diese Angabe meistens erforderlich.
|
Einstellungen für den Versand per sendmail | |
sendmail Verzeichnis | Geben Sie das Verzeichnis und Dateinamen zum Programm
sendmail an.
|
sendmail Parameter | Geben Sie die notwendigen sendmail-Parameter ein.
|
Pause während des Versands von mehreren E-Mails | |
Nach jeder E-Mail X ms warten. | Während des Versands per CronJob wird nach jeder E-Mail die
angegebene Zeit gewartet. Verwenden Sie diese Einstellung nur, falls der
Versandserver dies erfordert.
Die Verwendung dieser Funktion kann zum Scriptabbruch führen, falls die Scriptlaufzeit abgelaufen ist.
|
Benutzerdefinierte E-Mail-Header-Felder
Die Definition eigener E-Mail-Header-Felder ist eine Profi-Funktion, die fehlerhafte Verwendung dieser Funktion kann zu Darstellungsfehlern beim E-Mail-Empfänger oder zur Erkennung als Spam führen. Für jede Versandvariante müssen einzeln die E-Mail-Header definiert werden, diese werden danach für jede versendete E-Mail mit dieser Versandvariante verwendet. Informationen zum Aufbau von E-Mails und Spezifikation von E-Mail-Headern finden Sie im RFC 5322.
|
|
Neues Feld/Feld ändern | Fügt ein neues E-Mail-Header-Feld hinzu bzw. ändert das
gewählte Feld.
Geben Sie RFC-konform eine Bezeichnung des Header-Felds ein. Das E-Mail-Header-Feld darf nicht die Zeichen Leerzeichen, ", ', :, <, > und \ enthalten. Nicht verwendet werden dürfen die E-Mail-Header-Felder: BCc, Cc, Content-Class, Content-Transfer-Encoding, Content-Type, Date, DomainKey-Signature, From, Importance, In-Reply-To, List-Id, List-Unsubscribe, Message-Id, MIME-Version, Priority, Received, References, Reply-To, Return-Path, Sender, Status, Subject, Thread-Index, Thread-Topic, To, UIDL, X-ClientAddr, X-ID, X-Loop, X-Mailer, X-Mailer-Version, X-MIME-Autoconverted, X-MimeOLE, X-MS-Has-Attach, X-MSMail-Priority, X-MSMail-Priority, X-MS-TNEF-Correlator, X-OriginalArrivalTime, X-Originating-Email, X-Originating-IP, X-Priority, X-Sender, X-Spam-Checker-Version, X-Spam-Level, X-Spam-Status, X-TOI-MSGID, X-UIDL Als Inhalt des E-Mail-Header-Felds können beliebige Zeichenketten oder Platzhalter eingesetzt werden. Werden beim Versand einer E-Mail Zeilenumbrüche im Inhalt des E-Mail-Header-Felds gefunden, dann werden diese komplett entfernt.
|
Feld löschen | Löscht den gewählten Eintrag.
|
E-Mails eine digitale Signatur hinzufügen
(S/MIME)
Für die Nutzung dieser Funktion sind die entsprechenden Zertfikate notwendig.
Die Verwendung dieser Option führt zu einer höheren Serverlast, Vergrößerung der E-Mails und damit zu einer Verlängerung der Versandzeit.
Hinweise:
|
|
Schlägt Signierung fehl, E-Mail unsigniert versenden. | Aktivieren Sie diese Einstellung, um die E-Mail unsigniert
versenden zu lassen, falls bei der Signatur-Erzeugung Fehler auftreten.
|
Signierte E-Mails als Klartext-E-Mails versenden. | Versendet die E-Mails als Klartext-E-Mails, so dass diese
ebenfalls von älteren E-Mail-Programmen, ohne S/MIME-Unterstützung,
dargestellt werden.
|
S/MIME-Zertifikat öffentlicher Schlüssel | Geben Sie den öffentlichen Schlüssel des Zertifikats an.
Hinweis: Es ist ebenfalls möglich ein absolutes Verzeichnis und Dateinamen für das Zertifikat anzugeben, es muss vor dem Verzeichnis file:// angegeben werden. z.B. Datei cert.crt liegt im absoluten Verzeichnis /home/srv/www/certs/cert.crt, dann geben Sie file:///home/srv/www/certs/cert.crt an.
|
S/MIME-Zertifikat privater Schlüssel | Geben Sie den privaten Schlüssel an.
Hinweis: Es ist ebenfalls möglich ein absolutes Verzeichnis und Dateinamen für das Zertifikat anzugeben, es muss vor dem Verzeichnis file:// angegeben werden. z.B. Datei cert.pem liegt im absoluten Verzeichnis /home/srv/www/certs/cert.pem, dann geben Sie file:///home/srv/www/certs/cert.pem an.
|
Passwort für privaten Schlüssel | Geben Sie das Passwort für den privaten Schlüssel an. Die
Angabe des Passworts ist ein Pflichtfeld.
|
E-Mails eine DomainKey-/DKIM-Signatur
hinzufügen
Für die Nutzung dieser Funktion ist das entsprechende Zertfikat notwendig, ebenfalls müssen die DNS-Einträge der Domain korrekt gesetzt werden.
Die Verwendung dieser Option führt zu einer höheren Serverlast, Vergrößerung der E-Mails und damit zu einer Verlängerung der Versandzeit.
Hinweise:
|
|
Schlägt Signierung fehl, E-Mail unsigniert versenden. | Aktivieren Sie diese Einstellung, um die E-Mail unsigniert
versenden zu lassen, falls bei der Signatur-Erzeugung Fehler auftreten.
|
DKIM-Signatur hinzufügen. | Erzeugt den DKIM-Header und fügt diesen zum E-Mail-Header
hinzu.
|
DomainKey-Signatur hinzufügen. | Erzeugt den DomainKey-Header und fügt diesen zum
E-Mail-Header hinzu.
|
DomainKeys/DKIM Selektor | Geben Sie den DomainKeys/DKIM Selektor an.
|
DomainKeys/DKIM Privater Schlüssel | Geben Sie den privaten Schlüssel an.
Hinweis: Es ist ebenfalls möglich ein absolutes Verzeichnis und Dateinamen für das Zertifikat anzugeben, es muss vor dem Verzeichnis file:// angegeben werden. z.B. Datei cert.pem liegt im absoluten Verzeichnis /home/srv/www/certs/cert.pem, dann geben Sie file:///home/srv/www/certs/cert.pem an.
|
Passwort für privaten Schlüssel | Geben Sie das Passwort für den privaten Schlüssel an. Die
Angabe des Passworts ist optional.
|
E-Mail-Versand mit mehreren Threads
Der Versand mit mehreren Threads wird durch http(s)://-Aufrufe mit cURL ausgeführt, da PHP von Haus aus keine Threads unterstützt. Die Aufrufe sind in Wirklichkeit keine Threads sondern dies wird als "fork" bezeichnet, es wird durch PHP ein cURL-Prozess erzeugt, der mehrere http(s)://-Aufrufe ausführt. Diese mehreren http(s)://-Aufrufe führen zu einer starken Serverbelastung, da jeder Aufruf die E-Mails erzeugt und anschließend versendet.
Durch die starke Serverbelastung sollte immer ein eigener Webserver verwendet werden, auf einem normalen Webspace-Account könnten ansonsten während des Versands andere Webpräsenzen nur schwer oder gar nicht mehr aufrufbar sein.
Wie wird der Versand durchgeführt?
Bei Ausführung der http(s)://-Aufrufe wird jeweils das Script sendmail_mt.php mehrfach aufgerufen, die Anzahl richtet sich nach der Angabe im Feld "Anzahl Versandthreads". Per HTTP POST werden dem Script sendmail_mt.php die Daten zum E-Mail-Text und Datensätze der Empfänger übermittelt. Die Anzahl Empfänger richtet sich nach der Angabe im Feld "Maximale Anzahl E-Mails, die pro Versandthread versendet werden dürfen". Das sendmail_mt.php personalisiert die E-Mail für den jeweiligen Empfänger und versendet diese.
Wichtig für SuperWebMailer: Es sollte bei jedem E-Mailing und Responder immer die Option "Cache für E-Mail-Versand verwenden" unter dem E-Mail-Betreff aktiviert werden, dadurch muss nicht bei jeder E-Mail der E-Mail-Text im HTML- und Text-Format erneut übertragen werden. Dies führt zu einer Verringerung der Menge an Daten, die per HTTP POST übermittelt werden müssen.
Notwendige Einstellungen für einen schnelleren Versand
Die mögliche Laufzeit von PHP-Scripten muss in der php.ini bzw. für die virtuelle Webpräsenz erhöht werden, da in der Standard-Einstellung von 30 Sekunden kein Versand mit mehreren Threads ausführbar ist. Ein empfohlener Wert liegt bei 4-5 Minuten, um Scriptabbrüche während des Versands zu vermeiden.
Die Anzahl Versandthreads solle niedrig gewählt werden, höchstens 2-3 und dafür der Wert "Maximale Anzahl E-Mails, die pro Versandthread versendet werden dürfen" höher gewählt werden, z.B. 20 oder 30. Dies verringert die Versandzeit, da jeder http(s)://-Aufruf Zeit für den Verbindungsaufbau und Übermittlung der Daten per HTTP POST benötigt.
Nur SuperWebMailer: Bei jedem E-Mailing, Responder und Verteilerlisten sollte die Anzahl vorzubereitender E-Mails auf 1000 oder höher eingestellt werden, nur dann stehen für den späteren Versand genügend E-Mails in der Ausgangswarteschlange zur Verfügung.
Nur SuperMailingList Professional: Bei jeder Verteilerlisten sollte die Anzahl vorzubereitender E-Mails auf 1000 oder höher eingestellt werden, nur dann stehen für den späteren Versand genügend E-Mails in der Ausgangswarteschlange zur Verfügung.
Wie viel schneller ist der Versand?
Nur bei einer höheren Anzahl E-Mails von mehr als 1000 ist es sinnvoll den
multi-threaded Versand zu aktivieren. Je nach Geschwindigkeit und Auslastung des
Webservers und Annahme-Geschwindigkeit der E-Mails durch den Zielserver beträgt
die Einsparung mehrere Sekunden, bei einer höheren Anzahl entsprechend mehrere
Minuten oder Stunden.
Hinweis: Unter Einstellungen - Optionen, E-Mail-Versand kann die Option
"Booster verwenden" aktiviert werden, mit einer hohen Scriptlaufzeit
für PHP-Scripte ist ebenfalls eine höhere oder gleich hohe
Versandgeschwindigkeit möglich, da die zusätzlichen http(s)://-Aufrufe
entfallen.
Fehler während des Versands
Alle Fehler während des Versands finden Sie nur im Ereignisprotokoll und bei schweren Fehlern im error_log des Server bzw. virtuellen Webpräsenz.
HTTP Fehler 403 | Der Zugriff auf das Script sendmail_mt.php wurde verweigert.
Auf dem Server gibt es Limits bei http(s)://-Aufrufen auf das gleiche
Script, diese Limits müssen durch den Serverbetreiber aufgehoben werden
oder Anzahl Versandthreads verringern.
|
HTTP Fehler 410 | Der Server ist abgestürzt oder wurde neu gestartet. Die
Anzahl Versandthreads und Anzahl zu versendender E-Mails sollte verringert
werden.
|
HTTP Fehler 413 oder 414 | Die per POST übermittelte Datenmenge war zu groß, der Wert
für "Maximale Anzahl E-Mails, die pro Versandthread versendet werden
dürfen" sollte verringert werden. Prüfen Sie ebenfalls die PHP
Einstellung für post_max_size.
Für SuperWebMailer: Die Option "Cache für E-Mail-Versand verwenden" sollte aktiviert werden, damit nur einmal der Text der E-Mail im HTML- und Text-Format übermittelt werden muss.
|
HTTP Fehler 500 oder 503 | Die per HTTP POST übermittelte Datenmenge ist zu hoch oder
es trat ein interner Serverfehler auf, der Wert für "Maximale Anzahl
E-Mails, die pro Versandthread versendet werden dürfen" sollte
verringert werden.
Für SuperWebMailer: Die Option "Cache für E-Mail-Versand verwenden" sollte aktiviert werden, damit nur einmal der Text der E-Mail im HTML- und Text-Format übermittelt werden muss.
|
HTTP Fehler 504 oder Einträge im error_log mit "Connection timed out" | Es ist zu einer Zeitüberschreitung/Timeout gekommen, das
Script sendmail_mt.php wurde abgebrochen, da es zu lange ausgeführt
wurde.
|