项目场景:
使用yii2.0发送邮件
问题描述
在yii2中注册邮件(mailer)时出现Swift_TransportException错误
Failed to authenticate on SMTP server with username “xxxx@qq.com” using 1 possible authenticators. Authenticator LOGIN returned Expected response code 235 but got code “535”, with message "535 Login Fail. Please enter your authorization code to login.
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
// send all mails to a file by index. You have to set
// 'useFileTransport' to false and configure transport
// for the mailer to send real emails.
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.qq.com', //每种邮箱的host配置不一样
'username' => 'xxx@qq.com',
// 'password' => 'mbpjlrldsamheaai',
'password' => 'xxx',
'port' => '465',
'encryption' => 'ssl',
],
'messageConfig'=>[
'charset'=>'UTF-8',
'from'=>['xxx@qq.com'=>'xxx']
],
'useFileTransport' => false,
],
原因分析:
password错误,此处密码不是邮箱账号密码,而是邮箱作为第三方发件方服务器的配置密码
解决方案:
需要去相应邮箱站点获取配置,此处用QQ邮箱,去账号设置开启smtp时获取密码