2011-12-14 22 views
0

私のMS Exchangeサーバーから電子メールを送信するようにActionMailerを取得しようとしています。私は、同じマシン上のメールクライアントを使用して、Exchangeサーバー経由でメールを送受信できます。Ruby on Rails/actionmailerを使用してExchangeサーバー経由でメールを送信する

私がメールクライアントと関係があることの1つは、「メールアカウント」が「mapi」プロトコルを使用するように設定されていることです。

ActionMailerでメールを送信しようとするとタイムアウトします。

アイデア?

答えて

1

あなたはタイムアウトが発生している場合は、私は可能なネットワークの問題を見て開始するのです。同じマシン上でメールクライアントを使用していますが、別のポート/プロトコルを使用している可能性があります。

私はruby on railsアプリケーションを実行しているボックスにログインし、telnetでポート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: [email protected] 
RCPT TO: [email protected] 
DATA 
(enter message) 
. 

接続できない場合は、または交換がエラーをバック吐く、あなたの問題は、すべてのコードを中心に展開しません。

+0

意味があります。それはプロトコルの問題のように感じる。 telnetがタイムアウトします。 guiクライアントが "exchange mapi"と呼ばれるプロトコルを使用しています –

+1

交換ボックスでWindowsファイアウォールが有効になっているかどうかを確認してください。そうであれば、テスト目的で一時的に無効にすることができます。 (再び有効にすることを忘れないでください!)それは25へのアクセスをブロックします。 –

+0

交換ボックスは私のコントロールをはるかに超えています。 –

1

MAPI!= SMTP

Exchangeサーバーには、いくつかのプロトコルを実装することができます。サーバーのポート25にtelnetで接続できない場合、そのサーバーでSMTPプロトコルが有効になっていない。 SMTPは通常、他の世界と通信する境界サーバー上でのみ有効です。

関連する問題