我正在使用Rails 4和Devise 3.我需要发送确认电子邮件进行制作。 这些是我的config / environments / production.rb的SMTP配置
config.action_mailer.default_url_options = { :host => 'smtp.gmail.com' }
config.action_mailer.raise_delivery_errors = false
config.action_mailer.perform_deliveries = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:tls => true,
:port => '587',
:user_name => 'my_email@gmail.com',
:password => 'my_password',
:authentication => 'plain',
:enable_starttls_auto => true
}
日志说电子邮件已发送。但是,我在收件箱中看不到任何内容。 (是的,邮件收发器关闭)
另一个问题,开发文件的配置是否会以任何方式影响生产环境?他们不应该,对吗?
另一个重要问题:使用上述方法,可以处理多少封电子邮件?例如,如果我使用第三方说Mandrill会更好,因为可以处理数以万计的电子邮件。这个怎么样? P.S我已经尝试过Mandrill,它工作得很好。我被要求不使用第三方,但我将无法使用Mandrill。
最后,还有其他方式从Rails Devise发送我不知道的确认电子邮件吗?或者,由于我不会使用第三方,我还需要做任何其他配置才能完成这项工作吗?
非常感谢你的帮助,我很感激。
答案 0 :(得分:1)
请确保输入正确的主机名。
config.action_mailer.default_url_options = { :host => 'your domain name' }
作为Rails配置标准,如果您的应用程序在本地计算机上运行,则会加载开发环境。文件设置,如果是生产,那么它加载生产环境。文件设置。
我更喜欢使用MailChimp的sendgrid或Mandrill,如果您使用大型应用程序,那么最好使用第三方插件,对于小型应用程序,您可以使用Gmail。
希望这会对你有所帮助:)