PHPMailer电子邮件已成功发送但未收到(EC2)

时间:2017-03-31 06:31:46

标签: php email amazon-ec2 phpmailer

我在EC2上使用PHPMailer。我的帐户不在沙箱中,我发送的是经过验证的电子邮件。我从PHPMailer得到没有错误,这就是我的日志

2017-03-31 06:24:52 Connection: opening to email-smtp.us-west-2.amazonaws.com:587, timeout=300, options=array ( ) 
2017-03-31 06:24:52 Connection: opened 
2017-03-31 06:24:53 SERVER -> CLIENT: 220 email-smtp.amazonaws.com ESMTP SimpleEmailService-2007935443 svKFRJ5M6s1rqbMTRdZu 
2017-03-31 06:24:53 CLIENT -> SERVER: EHLO ***.domain 
2017-03-31 06:24:53 SERVER -> CLIENT: 250-email-smtp.amazonaws.com 250-8BITMIME 250-SIZE 10485760 250-STARTTLS 250-AUTH PLAIN LOGIN 250 Ok 
2017-03-31 06:24:53 CLIENT -> SERVER: STARTTLS 
2017-03-31 06:24:53 SERVER -> CLIENT: 220 Ready to start TLS 
2017-03-31 06:24:53 CLIENT -> SERVER: EHLO ***.domain 
2017-03-31 06:24:53 SERVER -> CLIENT: 250-email-smtp.amazonaws.com 250-8BITMIME 250-SIZE 10485760 250-STARTTLS 250-AUTH PLAIN LOGIN 250 Ok 
2017-03-31 06:24:53 CLIENT -> SERVER: AUTH LOGIN 
2017-03-31 06:24:53 SERVER -> CLIENT: 334 VXNlcm5hbWU6 
2017-03-31 06:24:53 CLIENT -> SERVER: xxx= 
2017-03-31 06:24:53 SERVER -> CLIENT: 334 UGFzc3dvcmQ6 
2017-03-31 06:24:53 CLIENT -> SERVER: xxx= 
2017-03-31 06:24:53 SERVER -> CLIENT: 235 Authentication successful. 
2017-03-31 06:24:53 CLIENT -> SERVER: MAIL FROM: 
2017-03-31 06:24:53 SERVER -> CLIENT: 250 Ok 
2017-03-31 06:24:53 CLIENT -> SERVER: RCPT TO: 
2017-03-31 06:24:53 SERVER -> CLIENT: 250 Ok 
2017-03-31 06:24:53 CLIENT -> SERVER: DATA 
2017-03-31 06:24:53 SERVER -> CLIENT: 354 End data with . 
2017-03-31 06:24:53 CLIENT -> SERVER: Date: Fri, 31 Mar 2017 06:24:52 +0000 
2017-03-31 06:24:53 CLIENT -> SERVER: To: NG 
2017-03-31 06:24:53 CLIENT -> SERVER: From: Me 
2017-03-31 06:24:53 CLIENT -> SERVER: Subject: New User Added 
2017-03-31 06:24:53 CLIENT -> SERVER: Message-ID: <8ada86808c4dc38c21d7ff5d64051951@***.domain> 
2017-03-31 06:24:53 CLIENT -> SERVER: X-Mailer: PHPMailer 5.2.21 (https://github.com/PHPMailer/PHPMailer) 
2017-03-31 06:24:53 CLIENT -> SERVER: MIME-Version: 1.0 
2017-03-31 06:24:53 CLIENT -> SERVER: Content-Type: text/html; charset=iso-8859-1 
2017-03-31 06:24:53 CLIENT -> SERVER: 
2017-03-31 06:24:53 CLIENT -> SERVER: 123 
2017-03-31 06:24:53 CLIENT -> SERVER: 
2017-03-31 06:24:53 CLIENT -> SERVER: . 
2017-03-31 06:24:53 SERVER -> CLIENT: 250 Ok 0101015b2309bfbe-39a8cf31-ad57-4998-832d-94312b7ddfad-000000 
2017-03-31 06:24:53 CLIENT -> SERVER: QUIT 
2017-03-31 06:24:53 SERVER -> CLIENT: 221 Bye 
2017-03-31 06:24:53 Connection: closed 

这是我的PHPMailer设置

$this->SMTPDebug = 3;

$this->Host = 'email-smtp.us-west-2.amazonaws.com';
$this->Username = '***';
$this->Password = '***';
$this->SMTPAuth = true;
$this->SMTPSecure = 'tls';
$this->Port = 587;
$this->isHTML(true);
$this->isSMTP();


$this->From = '***';
$this->FromName = '***';
$this->ReturnPath = '***';

我尝试将此邮件发送到不同的电子邮件但仍然无效。这是发送的实际代码

$mailer = new Mailer($API);
$mailer->Subject = 'New User Added';
$mailer->Body = '123';

$mailer->addAddress('***', '***');

if (!$mailer->send()) {
   throw new Exception($mailer->ErrorInfo);
} else {
    print_r('Sent');
}

3 个答案:

答案 0 :(得分:0)

我建议您转到https://www.mail-tester.com/,然后复制您看到的电子邮件地址。更新您的代码,然后使用PHPMailer将电子邮件发送到您复制的地址。假设您的代码确实发送了电子邮件,并且看起来您的代码是正确的,那么Mail Tester将向您显示您的电子邮件有哪些问题。

答案 1 :(得分:0)

对我来说问题是因为我还没有收到来自这个地址的邮件,所以所有的邮件都落入了垃圾邮件文件夹

答案 2 :(得分:0)

我遇到了同样的问题,当我设置 $mail->Username = 'xx@xx.xx' 时它消失了;到与 $mail->setFrom('xx@xx.xx')

相同的地址