无法从Yii SwiftMail发送电子邮件至GMail:预期响应代码250,但代码为“535”

时间:2016-05-18 04:16:04

标签: php email yii2 gmail

我收到了此错误代码:

  

预期回复代码250,但代码为“535”,消息“535-5.7.8用户名和密码不被接受。了解更多信息,请访问    535 5.7.8 https://support.google.com/mail/answer/14257

但是,我正在使用TLS,那么怎么可能更安全?!

还有一些其他问题,但它们不适用于Yii。

一些代码:

Yii::$app->mailer->setTransport([
  'class' => 'Swift_SmtpTransport',
  'host' => BestSales::getConfigValue('smtp.host'),
  'username' => BestSales::getConfigValue('smtp.username'),
  'password' => BestSales::decrypt(BestSales::getConfigValue('smtp.password.encrypted')),
  'port' => BestSales::getConfigValue('smtp.port'),
  'encryption' => BestSales::getConfigValue('smtp.encryption'), // 'tls', 'ssl'
]);

值:

[
    'smtp.host' => 'smtp.gmail.com',
    'smtp.username' => 'contact@xxxxxxxxxx.com',
    'smtp.password.encrypted' => 'xxxxxxxxxxx',
    'smtp.port' => '587',
    'smtp.encryption' => 'tls',
]

我登录Gmail并发现此消息:

  

登录尝试被阻止了   嗨,BestSales,   有人试图从不符合现代安全标准的应用登录您的Google帐户contact@xxxxxxxx.com。   细节:   2016年5月17日星期二23:27(东部夏令时间)   Ashburn,VA,USA *   我们强烈建议您使用Gmail等安全应用访问您的帐户。 Google生产的所有应用均符合这些安全标准。另一方面,使用安全性较低的应用可能会使您的帐户容易受到攻击。了解更多。

     

Google停止了此次登录尝试,但您应该查看最近使用过的设备

Yii文档说'tls'是一种选择。 http://www.yiiframework.com/doc-2.0/yii-swiftmailer-mailer.html

是的,我验证了解密后的值是正确的密码。我已经访问了https://accounts.google.com/DisplayUnlockCaptcha。我不能打开2因素,因为我不拥有该帐户,它需要一个电话号码。我现在无法启用“允许不安全访问”,因为它是客户的帐户,但我已经问过了。 (我宁愿不允许不安全的访问。)

5 个答案:

答案 0 :(得分:2)

self.driver.switch_to.default_content()

答案 1 :(得分:1)

首先,在加密中使用ssl,在端口中使用值465,因为 双因素身份验证不使用您的Gmail密码, 但创建一个Gmail密码,这是更好的访问权限 从那里到一个不太安全的应用程序,这里是the link 创建应用密码。

答案 2 :(得分:0)

尝试

'smtp.port' => '465',
'smtp.encryption' => 'ssl',

答案 3 :(得分:0)

经过几个小时的重新分析后,嘿嘿给你一些提示:

1 - 在Gmail上启用较少的安全应用访问

2 - 访问此链接:https://www.google.com/accounts/DisplayUnlockCaptcha

3 - 在config / web.php上添加以下参数:

>>> data = ['commercial van for movers',
...         'partial van for movers',
...         'commercial van for moving']
>>> long_substr_by_word(data)
'van for'
>>>
>>> data = ['a bx bx z', 'c bx bx zz']
>>> long_substr_by_word(data)
'bx bx'

答案 4 :(得分:-1)

您必须登录您的Gmail帐户并转到安全设置并通知他们您尝试访问自己的帐户。他们对它进行了阻止,因为它看起来很可疑。

转到this link然后重试。