自动回复转到错误的电子邮件地址


Autoreponse goes to wrong Email address

我有3个邮件id说,user1@abc.com, user2@abc.com和user3@abc.com。我已经设置PHPMailer与SMTP用户为user1@abc.com。现在我将自动响应设置为user3@abc.com。当我从user2@abc.com发送邮件到user3@abc.com时,自动响应将转到user1@abc.com,这是我用来配置SMTP的地址。我如何作出自动回复以发送至发送地址?

$mail->isSMTP();                                      
$mail->Host         = 'hostname';  
$mail->SMTPAuth     = true;                                
$mail->Username     = 'user1@abc.com';                  
$mail->Password     = 'password';                           
$mail->SMTPSecure   = '';                             
$mail->Port         = 25;                                    
$mail->Sender='user1@abc.com';
$mail->AddReplyTo('user2@abc.com', 'User2');
$mail->setFrom('user2@abc.com', 'User2', FALSE);
$mail->addAddress('user3@abc.com', 'User3'); 
$mail->isHTML(true);                                  
$mail->Subject = $subject;
$mail->Body    = $mailBody;
$mail->send();

您没有设置to地址,因此它将回落到默认值。

$mail->addAddress('user3@abc.com');

许多isp(例如gmail)不允许您设置任意的发件人地址,所以如果您的发件人地址不工作,请检查。此外,请确保不要伪造地址,因为当您违反SPF规则时,这会导致交付失败。

如果你正在写一个自动回复器,检查你正在回复的入站消息没有Precedence: bulk头集;自动回复不应该发送到邮件列表(邮件列表应该设置标题),因为它经常会导致循环。

相关文章: