【发布时间】:2016-11-09 21:37:13
【问题描述】:
我以两种方式使用 actionmailer。第一个带有 gmail smtp 的配置:-
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default :charset => "utf-8"
ActionMailer::Base.delivery_method = :smtp # be sure to choose SMTP delivery
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => "587",
:domain => "gmail.com",
:user_name => "some-username@gmail.com",
:password => "some-password",
:authentication => "plain",
:enable_starttls_auto => true
}
效果很好。邮件已发送。
问题是当我决定在我的服务器中使用我的邮件服务器时:-
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default :charset => "utf-8"
ActionMailer::Base.delivery_method = :smtp # be sure to choose SMTP delivery
ActionMailer::Base.smtp_settings = {
:address => "mail.xgram.xyz",
:port => "25",
:domain => "xgram.xyz",
:user_name => "some-username@xgram.xyz",
:password => "some-password",
:authentication => "plain",
:enable_starttls_auto => true
}
使用此配置,我在终端中收到此错误
Net::OpenTimeout(执行过期):
浏览器中的这个错误
执行已过期
另外,mail.xgram.xyz作为服务器名称是有效的,因为当我将其更改为任意名称时,错误将是
getaddrinfo:名称或服务未知
谁能帮帮我? 提前谢谢你
【问题讨论】:
标签: ruby-on-rails ruby smtp actionmailer