メールサービスまたは高度なネットワーク設定の誤りにより、AEMが送信SMTP メールを送信できない
AEM環境では、送信メールの送信に失敗する可能性があります。ログには、EmailExceptionやMailConnectExceptionなどのSMTP接続エラーや、ローカルで動作するがAEM as a Cloud Serviceで失敗するメールが表示されます。 この問題を修正するには、環境タイプを確認し、メールサービスとアドバンストネットワーク設定を修正して、ログでSMTP接続を検証します。
説明 description
環境
- Adobe Experience Manager as a Cloud Service
- AEM Managed Services
- Adobe Experience Manager 6.5 (オンプレミス)
- AEM Forms
問題/症状
- ログに
EmailException: Sending the email to the following server failedなどのSMTP送信エラーが表示されます。 - 公開ログに
MailConnectException: Could not connect to the host, portが表示されます。 - 電子メールはlocalhostで動作しますが、AEM as a Cloud Service(開発、ステージ、公開)では失敗します。
- AEM Forms メールエンドポイントは、予想よりも処理速度が遅いか、または予想される間隔で処理されません。
根本原因
アウトバウンド SMTP エラーは、次の1つ以上が原因で発生します。高度なネットワーキングポート転送ルールが欠落している(AEMaaCSのすべての外部SMTP接続に必要)、OSGi メールサービスの値が正しく設定されていない(マッピングされたportOrigではなくダイレクト SMTP ポートを使用するなど)、資格情報が正しくないか、AEMaaCSでコードとして設定されたデプロイメントが欠落している、AEM Forms メールエンドポイントスケジューラー動作が原因です。
再現手順
- 設定パスが異なるため、環境がAEM as a Cloud ServiceとAEM 6.5のどちらをオンプレミスにするかを判断します。
EmailExceptionまたはMailConnectException個のエントリのエラーログを確認します。- メールサービスの設定ソース(
com.day.cq.mailer.DefaultMailService.cfg.jsonファイル(AEMaaCS)またはWeb コンソール(AEM 6.5)のDay CQ メールサービス )を確認します。 - AEMaaCSの場合、Advanced Networking port forwardingが
portOrig(30465や30587など)を宛先ポート(465または587)にマッピングすることを確認します。
解決策 resolution
問題を修正するには:
- メールの構成が異なるため、AEM as a Cloud ServiceまたはAEM 6.5 オンプレミスの環境タイプを特定します。
- エラーログを確認します。 AEMaaCSの場合は、Cloud Manager
>環境>ログ を開きます。AEM 6.5の場合は、error.logを確認してください。EmailException、MailConnectException、proxy.tunnelを検索します。 関連するログが表示されない場合は、OSGi設定でsmtp.debug=trueを設定します。 - メールサービス設定を探します。 AEMaaCSの場合は、コードとしての設定で
com.day.cq.mailer.DefaultMailService.cfg.jsonを確認します。オンプレミスの場合は、/system/console/configMgrでWeb コンソールを開き、Day CQ Mail Serviceを選択します。 SMTP ホスト、ポート、ユーザー名、パスワード、およびSSL値が入力されていることを確認します。 AEMaaCSに設定がない場合は、コードとしてデプロイします。 - AEM as a Cloud Serviceの場合のみ、高度なネットワーク機能を検証します。 ポート転送が
portOrig(30465や30587など)を宛先ポート (465または587)にマッピングすることを確認します。 OSGi設定では、smtp.hostはプロキシホスト変数(AEM_PROXY_HOST、デフォルトproxy.tunnel)を使用し、smtp.portはportOrig値を使用します。 必要に応じて、Cloud ManagerのportForwards設定を更新します。 - AEM as a Cloud Serviceの場合のみ、SMTP ポートとSSLを正しく設定します。 SSL対応SMTP (宛先ポート 465)の場合、
smtp.portをマッピングされた30xxx ポートおよびsmtp.ssl=trueに設定します(例:portOrig30465はsmtp.ssl=trueを含むsmtp.port30465にマッピングします)。 - AEM as a Cloud Serviceの場合のみ、環境変数を検証します。 Cloud Manager
>Environment>Configurationで、EMAIL_USERNAME、EMAIL_PASSWORD、AEM_PROXY_HOSTなどの変数が存在し、スペルが正しいことを確認してから、変更後に再デプロイします。 - AEM 6.5 オンプレミスのみの場合は、Day CQ Mail Serviceを設定します。
/system/console/configMgrで、Day CQ Mail Serviceを選択し、SMTP ホスト、25以上のポート、ユーザーとパスワード、空白でない送信元アドレスを設定します。 変更が有効にならない場合は、AEMを再起動します。 - AEM Formsの場合のみ、メールエンドポイントを検証します。 繰り返し間隔、バッチサイズ、cron式を確認して、スケジューラーが期待されるタイミングでバッチを処理し、必要に応じて設定を再調整します。
- メールを送信する機能(フォーム送信、サーブレット呼び出し、ワークフロー)をトリガーして、メール配信をテストします。 電子メールを受信し、ログに
EmailExceptionまたはMailConnectExceptionのないSMTP ハンドシェイクが成功したことを確認します。 - それでも電子メールが失敗する場合は、Adobe サポート に連絡し、例外を示す
error.logスニペット、Day CQ メールサービス設定ファイル(AEMaaCScfg.json)、SMTP ホストとポートマッピングの詳細、およびアドバンストネットワークが有効になっているかどうかの確認を依頼します。
関連トピックス
recommendation-more-help
experience-cloud-kcs-help-kbarticles