Nicht zustellbare Mails erkennen

Hallo,

wenn ich Mails mit PHP verschicke, dann weiss ich nicht, ob sie zustellbar waren oder nicht. Wie kann ich also unzustellbare Mails erkennen und darauf reagieren? Muss man evtl. im Header noch was angeben?

Gruß Joachim

Hallo Joachim,

leider bekommt man bei SMTP (dem Mail-Versende Protokoll) nicht unbedingt sofort eine Antwort, ob das Versenden erfolgreich war. Stattdessen erhältst (irgendwann) du eine Fehler-E-Mail zurück.

Eine Idee wäre es also, im Subject einen Code anzugeben (leider schicken den Body nicht alle Mailer wieder zurück), und diesen dann per procmail beim Empfangen auszuwerten. Das geht natürlich nicht bei jedem Provider (ich kenne aber einen, bei dem es geht, den darf ich nur nicht nennen :wink:.

Wenn du wissen willst, ob die Mails gelesen wurden, dann gib eine URL an, die der Leser anklicken muss. Diese ruft dann wiederum ein PHP-Skript mit dem Code auf. So macht man es üblicherweise, um E-Mail-Adressen für Anmeldungen zu irgendwelchen Diensten zu verifizieren.

Alles Gute wünscht
…MIchael

Hallo,

leider bekommt man bei SMTP (dem Mail-Versende Protokoll)
nicht unbedingt sofort eine Antwort, ob das Versenden
erfolgreich war. Stattdessen erhältst (irgendwann) du eine
Fehler-E-Mail zurück.

Sofern in der mail()-Funktion from: integriert wurde.

Syntax:
mail(„[email protected]“, „the subject“, $message, „From: webmaster@$SERVER_NAME\nReply-To: webmaster@$SERVER_NAME\nX-Mailer: PHP/“ . phpversion());
von http://www.php.net/manual/de/function.mail.php

Gruss,

Hubert

[email protected] :wink: Da wäre ich vorsichtig. Bei AOL ist fast schon jedes Pseudonym belegt. Von Klobrille über Staubsauger bis [email protected]

Mit der From und Reply To Angabe im Header funktioniert es nicht. Habe ich so schon seit längerem im Einsatz - habe aber noch nie eine nicht zustellbare Email zurückbekommen.

Gruß Joachim

Hallo Hubert,

leider bekommt man bei SMTP (dem Mail-Versende Protokoll)
nicht unbedingt sofort eine Antwort, ob das Versenden
erfolgreich war. Stattdessen erhältst (irgendwann) du eine
Fehler-E-Mail zurück.

Sofern in der mail()-Funktion from: integriert wurde.

meines Wissens nach gehen Fehlermails nicht an den From:, sondern an den Sender:! Der Sender ist üblicherweise derjenige, unter dessen Account das PHP läuft, bei mod_php kann das dann so ein User wie www, httpd oder apache sein. Bei PHP via CGI sollte es üblicherweise der eigene User-Account sein.

In dem Zusammenhang spielt aber noch vieles mit rein, z.B. die genericstable oder andere Einstellungen des jeweiligen Mailers auf dem Server.

Alles Gute wünscht
…Michael