我尝试发送电子邮件时遇到错误。我正在尝试从localhost发送电子邮件.. actionmailer设置是
ActionMailer::Base.smtp_settings = {
:enable_starttls_auto => true,
:address => "smtp.gmail.com",
:port => 587,
:domain => "mydomain.com",
:authentication => :plain,
:user_name => "do-not-reply@mydomain.com",
:password => "mypassword"
}
当我第一次配置它时,电子邮件工作正常。但在发送4或5封电子邮件后,该功能停止工作并向我显示此错误
Net :: SMTPAuthenticationError ............
535-5.7.1不接受用户名和密码。
哪里可能有问题?
谢谢..
答案 0 :(得分:2)
我尝试使用托管网络服务器上的ruby应用程序使用smtp发送,并且被拒绝了,Gmail做了安全预防措施。
首先,解决方案是像往常一样在笔记本电脑上使用我自己的浏览器登录gmail。顶部有一个警告说gmail检测到可疑活动。 “是你吗?”我点击几步说这是我,并被带到一个屏幕上说:
下一步
使用您要授权访问的应用程序登录 在接下来的十分钟内开户。谷歌会记得 登录后申请,并允许其访问您的 只要使用正确的密码,将来的帐户。
然后我进入我的服务器,并从命令行执行:
lynx http://mail.google.com/mail/?ui=html
然后我使用lynx登录gmail,问题解决了。
答案 1 :(得分:0)
我遇到了同样的问题,当我仔细检查密码时,我意识到我输错了。
因此,错误可能是由错误的密码生成的,也可能是错误的用户名。 更正用户名和密码后,请确保重新启动rails应用程序。
我还假设您实际上并未使用文字文本“mydomain.com”,对吗?
答案 2 :(得分:0)
如果您确定已经多次检查过您的设置,仍然可以获得:
535-5.7.8 Username and Password not accepted
尝试重新启动rails服务器,尤其是在更改了yaml文件或环境文件时。
rails s
有关何时以及为何应重启的详情,请参阅When do I need to restart server in Rails?。
答案 3 :(得分:0)
转到config/initializers/setup_mail.rb
检查那里的配置是否与development.rb文件中写入的配置相匹配。它在两个文件中应如下所示:
config.action_mailer.smtp_settings = {
:address =>"smtp.gmabirdvision17@gmail.comil.com",
:port => 587,
:domain => "gmail.com",
:user_name => "mygmail@gmail.com",
:password => "**********",
:authentication => 'plain',
:enable_starttls_auto => true,
:openssl_verify_mode => 'none'
}
这肯定会解决你的问题。