Gee*_*Out 2 smtp ruby-on-rails ruby-on-rails-3
我正在尝试调试 Rails 如何发送电子邮件。目前它对我不起作用:)
但是我应该在配置中的哪里更改我尝试发送的 SMTP?以及如何设置它,以便在 dev/stage/live 上它使用其发送邮件的服务器的适当 SMTP 配置?
谢谢,亚历克斯
ps - 我最初是使用本教程进行设置的:http://guides.rubyonrails.org/action_mailer_basics.html
示例假设您使用邮件服务器 MAIL.YOUR-DOMAIN.COM
Action Mailer 现在使用 Mail gem —— 您可能需要在 ./config/environments/env.rb 文件中使用类似的内容:
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "MAIL.YOUR-DOMAIN.COM",
:port => 587,
:domain => 'YOUR-DOMAIN.COM',
:user_name => '<username>',
:password => '<password>',
:authentication => 'plain',
:enable_starttls_auto => true }
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
Run Code Online (Sandbox Code Playgroud)
另请参阅: http: //edgeguides.rubyonrails.org/action_mailer_basics.html
另一种方法是将以下内容放入 ./config/initializers/setup_mail.rb :
ActionMailer::Base.smtp_settings = {
:address => "MAIL.YOUR-DOMAIN.COM",
:port => 587,
:domain => "YOUR-DOMAIN.COM",
:user_name => "<username>"
:password => "<password>"
:authentication => "plain",
:enable_starttls_auto => true
}
Run Code Online (Sandbox Code Playgroud)
例如,如果您想使用 Gmail 的 SMTP 服务器通过 Gmail 帐户发送电子邮件,则上面的代码有效。其他 SMTP 服务器可能需要 :authentication 和 :enable_starttls_auto 的其他值,具体取决于 SMTP 服务器设置