我有奇怪的行为。我使用gmail在我的Rails应用中发送电子邮件。我将我的Gmail配置为接受安全性较低的应用程序。 但是,我发送了一封电子邮件,然后当我转到我的谷歌帐户时,它会提示我通过手机恢复帐户。
之后,我的应用程序不再发送电子邮件,我在Heroku日志中得到了这个:
Net::SMTPAuthenticationError (534-5.7.9 Please log in with your web browser and then try again.
我的production.rb
设置方式如下:
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:user_name => 'xxx@gmail.com',
:password => 'xxxxxx',
:authentication => "plain",
:enable_starttls_auto => true,
}
有人有什么想法吗?
答案 0 :(得分:0)
我认为您必须将domain
设置为gmail.com
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => "gmail.com",
:user_name => "xxx@gmail.com",
:password => "xxxxxxx",
:authentication => :plain,
:enable_starttls_auto => true
}
如果有效则可以,如果没有尝试将:authentication
更改为:login
。
建议:检查Gmail的安全事件,并仔细检查所有安全设置是否完好。
答案 1 :(得分:0)
所以我有几个问题。我注意力不集中的原因是我没有正确阅读过Figaro gem文档而且我没有用figaro heroku:set -e production
向Heroku发送正确的信息。
其次,我的帐户会在创建并发送第一封电子邮件后进入锁定状态。要做的步骤:
config/application.yml
答案 2 :(得分:0)
跟随@Mohamed的讽刺 建议:检查Gmail的安全事件,并仔细检查所有安全设置是否完好无损。 链接:https://www.google.com/settings/security/lesssecureapps