Der Return-Path wird bei der mail()-Anweisung ja durch den fünften Parameter -f gesetzt. Wenn ich eine mail mit der nackten mail()-Anweisung sende, dann klappt das auch.
Beim phpmailer mache ich das so:
$mail->Sender = $absender; scheint falsch zu sein, denn der Return-Path wird nicht auf das Absenderpostfach gebogen. Zur Erinnerung: Bei -f$absender mit mail() funktioniert das einwandfrei.
From, FromName und ReplyTo werden hingegen richtig gesetzt.
Was mache ich falsch?
Wenn ich class.phpmailer.php anschaue, dann finde ich dort:
Offensichtlich soll der Return-Path auf den übergebenen Absender gesetzt werden, wenn kein Sender übergeben wird. Aber auch das macht der phpmailer nicht. lasse ich die Zeile
$mail->Sender = $absender;
weg, dann habe ich das gleiche, falsche Ergebnis. Return-Path: bleibt ungesetzt.
Habe ich eine phpmailer-Einstellung vergessen?
Beim phpmailer mache ich das so:
PHP-Code:
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->From = $absender;
$mail->FromName = $absendername;
$mail->AddReplyTo($absender);
// So soll man den Return-Path setzen
$mail->Sender = $absender;
$mail->CharSet = "utf-8";
$mail->AddAddress($email);
$mail->Body = $mailtext;
$mail->Send();
From, FromName und ReplyTo werden hingegen richtig gesetzt.
Was mache ich falsch?
Wenn ich class.phpmailer.php anschaue, dann finde ich dort:
PHP-Code:
/**
* Sets the Sender email (Return-Path) of the message. If not empty,
* will be sent via -f to sendmail or as 'MAIL FROM' in smtp mode.
* @var string
*/
var $Sender = '';
// und weiter unten
if($this->Sender == '') {
$result .= $this->HeaderLine('Return-Path', trim($this->From));
} else {
$result .= $this->HeaderLine('Return-Path', trim($this->Sender));
}
$mail->Sender = $absender;
weg, dann habe ich das gleiche, falsche Ergebnis. Return-Path: bleibt ungesetzt.
Habe ich eine phpmailer-Einstellung vergessen?

Kommentar