我们的Rails 3.2应用程序的“重新发送激活码”邮件功能一直有效,直到代码从之前的开发人员转移到我们这里。现在我们得到了这个错误
Net::SMTPAuthenticationError in UsersController#create
我们的邮件设置保持不变:
ActionMailer::Base.smtp_settings = {
:address => "smtp.sendgrid.net",
:port => 587,
:domain => "example.com",
:user_name => "username",
:password => "password",
:authentication => "plain",
:enable_starttls_auto => true
}
我们在某种程度上无法弄清楚电子邮件停止工作的原因
我们检查了gmail服务器还通过telnet回复给我们
我们还在安全性中启用了Gmail的安全性较低的应用功能 - >帐户权限 - >访问不太安全的应用程序
提前谢谢。
答案 0 :(得分:0)
你提到使用Gmail的设置,我说你应该试试这个:
ActionMailer::Base.smtp_settings = {
address: "smtp.gmail.com",
port: 587,
user_name: ENV['GMAIL_USERNAME'],
password: ENV['GMAIL_PASSWORD'],
authentication: :plain,
enable_starttls_auto: true
}
如果你正在使用Sendgrid,如上所述你应该有:
ActionMailer::Base.smtp_settings = {
user_name: ENV['SENDGRID_USERNAME'],
password: ENV['SENDGRID_PASSWORD'],
domain: 'heroku.com', #for your helo domain
address: 'smtp.sendgrid.net',
port: 587,
authentication: :plain,
enable_starttls_auto: true
}
不要忘记妥善定义ENV
个变量。
您可以找到more discussion around this here