メールサービスまたは高度なネットワーク設定の誤りにより、AEMが送信SMTP メールを送信できない

AEM環境では、送信メールの送信に失敗する可能性があります。ログには、EmailExceptionMailConnectExceptionなどの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

問題を修正するには:

  1. メールの構成が異なるため、AEM as a Cloud ServiceまたはAEM 6.5 オンプレミスの環境タイプを特定します。
  2. エラーログを確認します。 AEMaaCSの場合は、Cloud Manager > 環境> ログ を開きます。AEM 6.5の場合は、error.logを確認してください。 EmailExceptionMailConnectExceptionproxy.tunnelを検索します。 関連するログが表示されない場合は、OSGi設定でsmtp.debug=trueを設定します。
  3. メールサービス設定を探します。 AEMaaCSの場合は、コードとしての設定でcom.day.cq.mailer.DefaultMailService.cfg.jsonを確認します。オンプレミスの場合は、/system/console/configMgrでWeb コンソールを開き、Day CQ Mail Serviceを選択します。 SMTP ホスト、ポート、ユーザー名、パスワード、およびSSL値が入力されていることを確認します。 AEMaaCSに設定がない場合は、コードとしてデプロイします。
  4. AEM as a Cloud Serviceの場合のみ、高度なネットワーク機能を検証します。 ポート転送がportOrig (30465や30587など)を宛先ポート (465または587)にマッピングすることを確認します。 OSGi設定では、smtp.hostはプロキシホスト変数(AEM_PROXY_HOST、デフォルト proxy.tunnel)を使用し、smtp.portportOrig値を使用します。 必要に応じて、Cloud ManagerのportForwards設定を更新します。
  5. AEM as a Cloud Serviceの場合のみ、SMTP ポートとSSLを正しく設定します。 SSL対応SMTP (宛先ポート 465)の場合、smtp.portをマッピングされた30xxx ポートおよびsmtp.ssl=trueに設定します(例:portOrig30465はsmtp.ssl=trueを含むsmtp.port30465にマッピングします)。
  6. AEM as a Cloud Serviceの場合のみ、環境変数を検証します。 Cloud Manager > Environment > Configurationで、EMAIL_USERNAMEEMAIL_PASSWORDAEM_PROXY_HOSTなどの変数が存在し、スペルが正しいことを確認してから、変更後に再デプロイします。
  7. AEM 6.5 オンプレミスのみの場合は、Day CQ Mail Serviceを設定します。 /system/console/configMgrで、Day CQ Mail Serviceを選択し、SMTP ホスト、25以上のポート、ユーザーとパスワード、空白でない送信元アドレスを設定します。 変更が有効にならない場合は、AEMを再起動します。
  8. AEM Formsの場合のみ、メールエンドポイントを検証します。 繰り返し間隔、バッチサイズ、cron式を確認して、スケジューラーが期待されるタイミングでバッチを処理し、必要に応じて設定を再調整します。
  9. メールを送信する機能(フォーム送信、サーブレット呼び出し、ワークフロー)をトリガーして、メール配信をテストします。 電子メールを受信し、ログにEmailExceptionまたはMailConnectExceptionのないSMTP ハンドシェイクが成功したことを確認します。
  10. それでも電子メールが失敗する場合は、Adobe サポート ​に連絡し、例外を示すerror.log スニペット、Day CQ メールサービス設定ファイル(AEMaaCS cfg.json)、SMTP ホストとポートマッピングの詳細、およびアドバンストネットワークが有効になっているかどうかの確認を依頼します。

関連トピックス

recommendation-more-help
experience-cloud-kcs-help-kbarticles