PhpMailer SMTP 错误用户名命令失败 : 535 5. 7.8

标签 php phpmailer

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/

相关文章:

php - 网站本地化技术

PHP:Unicode 强调字符和变音符号

php - 在 Laravel 8 中找不到 404

php - 在 PHP 内的 HTML 表内的 JQuery 内嵌入 php ...不会触发

PHPMailer SMTP 错误 : Could not authenticate using gmail as smtp server

php 邮件程序邮件程序错误 : Language string failed to load: connect_host?

phpmailer 发送邮件后报错

PHPmailer 发送到垃圾邮件

php - 当我尝试测试对基于 PHP 的服务器的请求时,我应该使用 Java 或 Python 中的哪种数据结构,该服务器需要带有字符串索引的数组?

PHPMailer 代码在本地主机上工作,而不是在服务器上。错误日志指向文件的意外结尾,但我不明白为什么会出错