【发布时间】:2016-09-22 03:23:54
【问题描述】:
我一直在用 Rails 发送电子邮件。我需要使用 Devise gem 发送密码重置或激活帐户电子邮件。感谢 Devise 内置了电子邮件发送功能。我只需要配置发件人。我用谷歌搜索并找到了很多关于如何做到这一点的教程。以下是我仍然不明白的事情,因为很多教程都没有过多地谈论它们:
任何教程都带有类似的东西:
config.action_mailer.default_url_options = { :host => 'gmail.com' }
config.active_support.deprecation = :notify
config.action_mailer.delivery_method = :smtp
config.action_mailer.raise_delivery_errors = false
config.action_mailer.default :charset => "utf-8"
# SMTP settings
ActionMailer::Base.smtp_settings = {
:port => 587,
:address => 'smtp.gmail.com',
:domain => 'gmail.com',
:user_name => ENV['username'],
:password => ENV['password'],
:authentication => :plain,
}
对我来说不清楚的事情是:
1) 什么是:host,我可以用localhost吗?例如是gmail.com。我需要设置一些gmail服务器吗?
2) 什么是:domain,还是我的站点域?还是只使用gmail.com 就可以了?
3) 什么是user_name 和password?
所以一般的问题是我是否需要在我的生产服务器上安装一些邮件服务器等等,本教程的人跳过这部分。谁发送我的电子邮件? Rails 应用服务器?还是单独的 smtp 服务器?
【问题讨论】:
标签: ruby-on-rails devise actionmailer