メールを送信すると、エラー「リレーアクセスが拒否されました」が発生します。
「outside_network」から「other_domain」にメールを送信しようとすると、「Relay access denied」がスローされます。 「outside/inside_network」の「myown_domain」および「inside_network」の「other_domain」に対して正常に機能します。
Telnetコマンドのリストは次のとおりです。
mail from:[email protected]
- 250 2.1.0 Ok
rcpt to:[email protected]
- 250 2.1.5 Ok
rcpt to:[email protected]
- 554 5.7.1 <[email protected]>: Relay access denied.
rcpt to:[email protected]
- 554 5.7.1 <[email protected]>: Relay access denied.
rcpt to:[email protected]
- 554 5.7.1 <[email protected]>: Relay access denied.
「 Microsoft Support 」に記載されているすべての手順に従い、サーバーが正しい方法で構成され、メールが拒否されないことを確認しました。また、 this one のようなブログをいくつか使用してトレースしようとしました。
MxToolboxを使用しているときにも、「リレーアクセスが拒否されました」という同じ結果が得られました。
「Relay access denied」は非常に一般的な問題であるため、多くのブログ/ドキュメントがあります。
誰か提案はありますか?
ネットワークの外部からサーバーに権限のないドメインに電子メールを送信しようとしたときに、リレーアクセスが拒否された場合、受信コネクタが送信/中継のアクセス許可を付与していないことを意味します。ほとんどの場合、必要なことは、中継のアクセス許可を付与されるサーバーに対して認証することですが、それは受信コネクタの構成に依存します。 Exchange 2007/2010/2013では、ExchangeUsersアクセス許可グループと、基本認証などの認証メカニズムを有効にする必要があります。
受信コネクタが構成されていることを確認したら、SMTPサーバーに対しても認証用に電子メールクライアントが構成されていることを確認してください。サーバーのセットアップに依存しますが、通常、Exchangeの場合はユーザー名を単独で構成します。ドメインを追加またはプレフィックスする必要はありません。
Telnetを介した認証でテストするには、こちらの投稿で指示を確認できます。 https://jefferyland.wordpress.com/2013/05/28/essential-exchange-troubleshooting-send-email-via- telnet /
$mail->SMTPAuth = true;
を設定することが私にとっての解決策でした。その理由は、認証なしではメールサーバーが「Relay access denied」で応答するためです。これを私のコードに入れて以来、すべてのメールは問題なく動作します。