ActionMailer和Exchange [英] ActionMailer and Exchange

查看:105
本文介绍了ActionMailer和Exchange的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用我的Rails应用程序和Postfix服务器通过SMTP成功发送了邮件。现在,我需要转到Exchange:Microsoft ESMTP MAIL服务,版本:6.0.3790.3959,该服务已启用POP3和SMTP支持。

I successfully send Mails via SMTP using my Rails App and my Postfix Server. Now I need to move to an Exchange: Microsoft ESMTP MAIL Service, Version: 6.0.3790.3959 that has POP3 and SMTP support enabled.

我使用actionmailer 1.2.5,在尝试发送邮件时无法成功登录服务器。

I use actionmailer 1.2.5 and am not able to successfully login to the server while trying to send a mail.

如果我使用Mail.app,只要将身份验证架构更改为密码,发送和接收就可以正常工作。检查服务器的方式如下:

In case I use Mail.app sending and recieving works fine as long as I change the authentication schema to "Password". Checking the server looks like so:

READ Nov 18 10:37:00.509 [kCFStreamSocketSecurityLevelNone]  -- host:mail.my-mail-server-domain.com -- port:25 -- socket:0x11895cf20 -- thread:0x11b036a10
250-mail.my-mail-server-domain.com Hello [xxx.xxx.xxx.xxx]
250-TURN
250-SIZE
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250-X-EXPS GSSAPI NTLM LOGIN
250-X-EXPS=LOGIN
250-AUTH GSSAPI NTLM LOGIN
250-AUTH=LOGIN
250-X-LINK2STATE
250-XEXCH50
250 OK

WROTE Nov 18 10:37:00.852 [kCFStreamSocketSecurityLevelNone]  -- host:mail.my-mail-server-domain.com -- port:25 -- socket:0x11895cf20 -- thread:0x11b036a10
AUTH LOGIN

READ Nov 18 10:37:01.848 [kCFStreamSocketSecurityLevelNone]  -- host:mail.my-mail-server-domain.com -- port:25 -- socket:0x11895cf20 -- thread:0x11b036a10
235 2.7.0 Authentication successful.

所以似乎正确支持了身份验证方法:login。现在,关于我的actionmailer配置,看起来像这样:

So authentication method :login seems to be properly supported. Now when it comes to my configuration for actionmailer it looks like so:

ActionMailer::Base.server_settings = {
    :address => "mail.my-mail-server-domain.com",
    :port => 25,
    :domain => "my-mail-server-domain.com",
    :authentication => :login,
    :user_name => "myusername",
    :password => "mypassword"
}

我一遍又一遍地收到验证错误。我还尝试更改

And I get authentication errors over and over. I also tried to change

    :user_name => "my-mail-server-domain.com\myusername"
    :user_name => "my-mail-server-domain.com\\myusername"
    :user_name => "myusername/my-mail-server-domain.com"
    :user_name => "myusername@my-mail-server-domain.com"

,但没有任何效果。谁能帮我?

but nothing works. Can anyone help me?

致谢。
Jason

Regards. Jason

推荐答案

我认为您需要添加

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
  :domain             => "my-mail-server-domain.com",
  :address            => "mail.my-mail-server-domain.com",
  :port               => 25
  :authentication => :login ,
  :user_name          => 'myusername',
  :password           => 'mypassword',
}

ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.raise_delivery_errors = true
ActionMailer::Base.default_charset = "utf-8"
ActionMailer::Base.default_content_type = "text/html"

或尝试更改端口。通常,端口25/26被阻止发送电子邮件,并且某些电子邮件提供商拒绝接收来自使用localhost smtp的端口25的电子邮件。
或您的互联网提供商正在阻止端口25。
如果仍然无法正常工作,则可以在此处输入错误。

or try changing your port. usually port 25/26 is blocked to send emails, and some email providers are refusing to receive email from port 25 that uses localhost smtp. Or maybe your internet provider is blocking port 25. if it still doesn't work you could write the errors here.

这篇关于ActionMailer和Exchange的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆