PHPMailer 5.2 一直告诉我,我无法发送电子邮件。
我知道凭据是正确的(firefox 检查电子邮件,laravel 发送电子邮件)。
我缺少哪个设置/命令?
PHP代码:
$mail->isSMTP();
$mail->Host = ******;
$mail->SMTPAuth = true;
$mail->Username = ******;
$mail->Password = ******;
$mail->SMTPSecure = false;
$mail->Port = 25;
$mail->SMTPDebug = 3;
$mail->SMTPOptions = [
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
]
];
SMTP 调试:
2017-03-22 19:06:14 Connection: opening to *************:25, timeout=300, options=array (
'ssl' =>
array (
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true,
),
)
2017-03-22 19:06:14 Connection: opened
2017-03-22 19:06:14 SERVER -> CLIENT: 220 ************* ESMTP Postfix
2017-03-22 19:06:14 CLIENT -> SERVER: EHLO *******
2017-03-22 19:06:14 SERVER -> CLIENT: 250-*************
250-PIPELINING
250-SIZE 15728640
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN CRAM-MD5
250-AUTH=PLAIN LOGIN CRAM-MD5
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
2017-03-22 19:06:14 CLIENT -> SERVER: STARTTLS
2017-03-22 19:06:14 SERVER -> CLIENT: 220 2.0.0 Ready to start TLS
2017-03-22 19:06:14 CLIENT -> SERVER: EHLO *******
2017-03-22 19:06:14 SERVER -> CLIENT: 250-*************
250-PIPELINING
250-SIZE 15728640
250-ETRN
250-AUTH PLAIN LOGIN CRAM-MD5
250-AUTH=PLAIN LOGIN CRAM-MD5
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
2017-03-22 19:06:14 CLIENT -> SERVER: AUTH CRAM-MD5
2017-03-22 19:06:14 SERVER -> CLIENT: 334 ***********************************
2017-03-22 19:06:14 CLIENT -> SERVER: **************************************
2017-03-22 19:06:16 SERVER -> CLIENT: 535 5.7.8 Error: authentication failed: ***********************************
2017-03-22 19:06:16 SMTP ERROR: Username command failed: 535 5.7.8 Error: authentication failed: ***********************************
2017-03-22 19:06:16 SMTP Error: Could not authenticate.
2017-03-22 19:06:16 CLIENT -> SERVER: QUIT
2017-03-22 19:06:16 SERVER -> CLIENT: 221 2.0.0 Bye
2017-03-22 19:06:16 Connection: closed
2017-03-22 19:06:16 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
最佳答案
AuthType 应该可以解决您的问题:
$mail->AuthType = 'LOGIN';
其他选项包括:PLAIN、LOGIN、NTLM、CRAM-MD5、XOAUTH2
https://phpmailer.github.io/PHPMailer/classes/SMTP.html#method_authenticate
关于PhpMailer SMTP 错误用户名命令失败 : 535 5. 7.8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42961426/