我正在尝试让ActionMailer通过我的MS Exchange服务器发送电子邮件。我可以使用邮件客户端(在同一台机器上)通过Exchange服务器发送/接收邮件。
我必须对邮件客户端做的一件事是将“邮件帐户”设置为使用“mapi”协议。
当我尝试使用ActionMailer发送电子邮件时,它会超时。
有什么想法吗?
答案 0 :(得分:1)
你试过这个吗?
或者你有这个答案,它可以帮助你:
答案 1 :(得分:1)
如果您遇到超时,我会开始查看可能存在的网络问题。你说你在同一台机器上使用邮件客户端,但它可能使用不同的端口/协议。
我登录到在rails应用程序上运行ruby的框,并尝试telnet'ing到端口25.你可能会发现你无法连接。如果可以,请尝试使用SMTP来发送消息:
$ telnet mail.example.com 25
220 mail.example.com Microsoft ESMTP MAIL Service, Version: x.x.xxxx.xxxx ready at Thu, 12 Apr 2012 14:55:10 -0400
HELO yourfqdn.example.com
MAIL FROM: youruser@example.com
RCPT TO: user@example.com
DATA
(enter message)
.
如果您在尝试提交邮件时无法连接或更换错误,则问题根本不在于代码。
答案 2 :(得分:1)
MAPI!= SMTP
Exchange服务器可以实现多种协议。如果无法telnet到服务器上的端口25,则该服务器上未启用SMTP协议。 SMTP通常仅在与世界其他地方通信的外围服务器上启用。