Mailinglisten-Archive |
Hallo Stephan, Hallo Listies, > Moin alle zusammen, > ich habe ein Skript geschrieben, das an verschiedene eMail-Adressen aus > meiner DB eine Mail per PHP verschickt. Leider bekomme ich keine > Antwort vom > Mailer-Daemon, wenn es die Adresse nicht gibt. Wenn ich z.B. eine > Mail über > Outlook z.B. an meinname_(at)_isthase.de schicke, bekomme ich eine > Antwort, dass > diese Adresse nicht existiert. Wenn ich es dann per PHP mache, gibt es > keine. Gibt es eine Möglichkeit in PHP eine solche Antwort zu > bekommen? Oder > wie kann ich 100%ig überprüfen, ob es jemanden gibt? Leider ist es nicht so einfach herauszufinden ob es eine Adresse wirklich gibt. Ein SMTP-Server ist nicht verpflichtet zu sagen das es einen Empfänger nicht gibt. Er weiss ja oft selbst nicht ob es diesen Empfänger gibt da er evtl. die Mail auch nur weiterreicht. Daher kann man beim verschicken prinzipiell eine direkte Antwort bekommen. Erst wenn die E-Mail ihren endgültigen Bestimmungsort erreicht hat und der Mailer dort so nett ist zu sagen das es diesen User nicht gibt (Result 550) dann kann man auf der from, reply-to bzw. error-to Adresse eine Information bekommen. Aber auch nur in Form einer E-Mail die man dann wieder parsen muss um festzustellen welche Mail jetzt nicht angekommen ist. In der Praxis können gut 10 Tage zwischen absenden und Fehlermeldung liegen. Daher empfielt es sich eine gute Message-ID zu generieren um diese dann im Fehlerfall auswerten zu können. Folgendes kann man an einer E-Mail-Adr 100%ig prüfen: - Syntax: Aber bitte aufpassen ich habe oft im Web schon erlebt das eine Adr. hugo_klaus_(at)_nix.com "fehlerhaft" war. D.h. bitte RFC studieren und nach diesem Regelwerk E-Mails Syntaktisch prüfen. Und nicht jedes fertige Script was man so im PHP Umfeld findet ist richtig nur weil es schon existiert. - Mail-Domain: Die Mail-Domain kann man recht einfach anhand des MX-Records im DNS prüfen. Wenn der nicht existiert kann es schonmal nicht gehen. RFC zu SMTP: 821 Gruß, Andreas
php::bar PHP Wiki - Listenarchive