Antwort an „Auge“ verfassen

Hallo

$headers    = [];
$headers[]  = "MIME-Version: 1.0";
$headers[]  = "Content-Type: text/html; charset=UTF-8";
$headers[]  = "From: Veranstaltungskalender remso.eu <os*****h@re*****u>";

mail( …, implode("\r\n", $headers) );

Als erstes lasse bitte, wie schon Jörg angemerkt hat, den Aufruf von implode weg. Das macht die Funktion mail selbst.

Was könnte fehlen? Ein Eintrag in der php.ini?

Das kommt darauf an. Es gibt mehrere mögliche Fallstricke.

Einige Hosting-Provider möchten beim Aufruf von mail im fünften Parameter eine für die Sende-Domain gültige E-Mail-Adresse sehen, manchmal auch, wie von Jörg mit einem fehlenden Leerzeichen schong ezeigt, als Terminal-Parameter -f beispiel@example.com. Falls das der Fall ist, wird das üblicherweise auch in den FAQ der Hoster beschrieben.

In PHP 8.0 gab es eine Änderung im Verhalten von mail, die auf manchen Unix-/Linux-Systemen den E-Mail-Versand verhinderte. Mit PHP 8.1 wurde ein Schalter in der php.ini eingeführt, mit dem man die Zeilenendzeichen für mail von \r\n zu \n zurückschalten kann. Aber das muss bei gemietetem Webspace üblicherweise der Hoster tun. Ich hatte das erst vor Kurzem etwas ausführlicher beschrieben.

An dieser Stelle möchte ich Felix' Empfehlung, die E-Mails mit einer dedizierten Software wie PHPMailer zu versenden, zustimmen, auch wenn ich seiner implizit geäußerten Begründung, dass mail veraltet sei, nicht zustimmen möchte. Wenn der Server mit all seinen Komponenten korrekt konfiguriert ist, funktioniert mail einwandfrei. Zu beachten ist bei PHPMailer[1] allerdings, dass man in der Konfiguration explizit angeben muss, dass man direkt per SMTP zu senden gedenkt. Ansonsten sendet nämlich auch der PHPMailer über die PHP-Funktion mail.

Martins Warnung vor einer von From abweichenden E-Mail-Adessangabe im Reply-To-Header möchte ich mich hingegen explizit nicht anschließen, auch wenn ihn das als potentiellen Empfänger ausschließt. Zumindest für den Versand von zum Beispiel Newslettern ist das gängig und meiner Meinung nach nicht zu beanstanden. Auch beim Versand von Eingaben von Kontaktformularen an einen Website-Betreiber per E-Mail kann es bei diversen Hosting-Anbietern notwendig sein, als Absender eine domaineigene E-Mail-Adresse zu verwenden und die E-Mail-Adresse, die der kontaktwillige Besucher der Website als Antwortadresse angegeben hat, in den Reply-To-Header zu setzen, damit die E-Mail überhaupt versendet wird.

*btw* Mir ist im Übrigen kein E-Mail-Client bekannt, der nicht zwischen From und Reply-To zu unterscheiden weiß.

Zu guter Letzt kommt als mögliches Problem noch hinzu, dass diverse E-Mail-Server-Betreiber für zu empfangende E-Mail weitere Maßnahmen zur Verifizierung des Versenders von E-Mails erwarten (Zertifikate, Header). In solchen Fällen bekämst du aber üblicherweise Nachrichten per E-Mail, die besagen, dass E-Mails nicht zustellbar waren. Das ist also mit großer Wahrscheinlichkeit nicht die Ursache deines Problems.

Vor einigen Monaten hat mein Provider eine Mail-Adresse auf remso.eu eingerichtet. Vermutlich geht es seitdem nicht. Erst jetzt brauche ich es wieder, früher ging es.

Da du in einem deiner Postings erwähnst, dass du den E-Mail-Versand auf einem Webspace bei Variomedia erfolgreich getestet hast, möchte ich der Klarheit wegen fragen, ob dein scheiternder Versand bei einem anderen Hoster auftritt und ob dort eventuell eine andere Domain als die, mit der du die E-Mails zu versenden gedenkst, gehostet ist. Also sowas wie: beim Hoster betriebene Domain ist example.com, der Versandversuch erfolgt von der Domain example.net.

Tschö, Auge

--
„Habe ich mir das nur eingebildet, oder kann der kleine Hund wirklich sprechen?“ fragte Schnapper. „Er behauptet, nicht dazu imstande zu sein“ erwiderte Victor. Schnapper zögerte (…) „Nun …“ sagte er schließlich, „ich schätze, er muss es am besten wissen.“ Terry Prattchett, Voll im Bilde

  1. zu anderen, vergleichbaren Produkten kann ich nichts sagen ↩︎

freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar

Ihre Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.

abbrechen