【发布时间】:2012-12-12 07:18:51
【问题描述】:
谁有幸将 ActionMailer 配置为通过 Zoho 帐户发送电子邮件?
这些是我的设置:
ActionMailer::Base.smtp_settings = {
:address => "smtp.zoho.com",
:port => 465,
:domain => 'example.com',
:user_name => 'steve@example.com',
:password => 'n0tmypa$$w0rd',
:authentication => :login
}
但是,调用 .deliver 超时:
irb(main):001:0> AdminMailer.signup_notification('asfd').deliver
Timeout::Error: Timeout::Error
from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:146:in `rescue in rbuf_fill'
from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:140:in `rbuf_fill'
from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:122:in `readuntil'
from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:132:in `readline'
from C:/Ruby193/lib/ruby/1.9.1/net/smtp.rb:929:in `recv_response'
from C:/Ruby193/lib/ruby/1.9.1/net/smtp.rb:552:in `block in do_start'
from C:/Ruby193/lib/ruby/1.9.1/net/smtp.rb:939:in `critical'
from C:/Ruby193/lib/ruby/1.9.1/net/smtp.rb:552:in `do_start'
from C:/Ruby193/lib/ruby/1.9.1/net/smtp.rb:519:in `start'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/mail-2.4.4/lib/mail/network/delivery_methods/smtp.rb:144:in `deliver!'
help docs 表示使用端口 465 和 SSL 身份验证。我尝试过使用和不使用:enable_starttls_auto => true,但它仍然超时。
具体来说,docs 指定以下设置:
> Email Address: Username@yourdomain.com
> User Name format: Username@yourdomain.com
> Secure Connection (SSL) Yes
> Outgoing Mail Server Name: smtp.zoho.com
> Outgoing Port No.: 465
> Outgoing Mail Server requires authentication: Yes
有什么想法吗?
附言我已将 Outlook 配置为使用 help docs 中的设置,并且外发电子邮件工作正常。 telnet 到 smtp.zoho.com 465 也可以连接。
【问题讨论】:
-
你在本地尝试吗???
-
我是,当然 SMTP 服务器是远程的 (zoho.com)。这有关系吗?具有相同设置的电子邮件客户端(outlook)也在同一个本地主机上..
-
不确定您是否要使用 Outlook,Microsoft 似乎不容忍从应用程序发出的邮件 - 即使是电子邮件确认等必要的事情。
标签: ruby-on-rails ruby-on-rails-3 actionmailer zoho