Mailversand via PHP

  • Hallo Zusammen,


    ich bin heute auf ein Problem gestoßen, wo ich vermutlich den Wald vor lauter Bäumen nicht sehe ?!


    Ich möchte über ein PHP-Script eine Email versenden lassen. Die Email wird zwar generiert und versandt, aber leider nicht zugestellt, sondern als bounced abgewiesen: said: 550-Sender has no A, AAAA, or MX DNS records


    PHP
    <?php
    $nachricht = "Test";
    $header = 'From:info@meinedomain.de' ."\r\n" .
       'Reply-To:info@meinedomain.de' . "\r\n" .
       'X-Mailer:PHP/' . phpversion();
    
    
    mail('test@meinedomain.de', 'Test', $nachricht, $header);
    ?>


    Nach meiner Interpretation sollte die Email mit dem Absender "info@meinedomain.de" versandt werden, wird aber unter web28@localhost.localdomain abgeschickt.
    Das komplette System ist mit LiveConfig konfiguriert worden, wo kann ich hier jetzt mit der Problemsuche anfangen?
    Liegt es an der PHP.ini (da die Header nicht korrekt gesetzt werden), oder am MTA ?


    Freue mich über Eure Hinweise ;)


    herzliche Grüße
    Matthes!

  • Das PHP-Script läuft mit Benutzerrechten (effektiv also als "web28"). Beim Versand via mail() (=sendmail) wird daher natürlich dieser Benutzer als "Envelope-From"-Absender eingetragen. Da eine Domain fehlt, fügt dann i.d.R. Postfix die lokale Systemdomain an.


    Die Lösung ist eigentlich nur, "ordentlich" Mails zu versenden:
    1.) via SMTP (also einen ordentlichen Mailserver nutzen)
    2.) oder der mail()-Funktion einen 5. Parameter übergeben ("additional_parameters") und dort die Sendmail-Option "-f" setzen (z.B. "-f absender@example.org")
    - siehe http://php.net/manual/en/function.mail.php


    Viele Grüße


    -Klaus Keppler

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!