AEM as a Cloud Serviceでのクライアントドメインルーティングの問題の修正
Dispatcher ファームの設定が正しくないと、Adobe Experience Manager as a Cloud Service(AEMaaCS)でのクライアントドメインのルーティングが失敗し、リクエストのデフォルトが間違ったファームに設定されます。 これを解決するには、Dispatcher 設定を検証し、仮想ホストのエイリアスを更新し、ファームファイルの名前を変更して順序を修正し、クライアントヘッダーを確認し、正しいドメインマッピングが得られるように CDN 設定を検証します。
説明 description
環境
Adobe Experience Manager as a Cloud Service(AEMaaCS) – サイト、Akamai CDN とドメイン証明書および複数のカスタムドメインを使用している実稼動環境。
問題/症状
- Dispatcher ログに、次のような警告が表示されます。ホスト「localhost」に一致するファームがありません、選択した最後のファーム「publishfarm」。
- Dispatcher 設定では、有効なファームの優先順位が逆アルファベット順に設定されているように見えます。
enabled_vhostsおよびenabled_farmsディレクトリ内のファイルのシンボリックリンクがありません。- 仮想ホスト設定には、
localhostなどの特定の必須サーバーエイリアス127.0.0.1が存在しません。
解決策 resolution
この問題を解決するには、次の手順に従います。
-
Dispatcher設定の検証:
- Dispatcher検証ツールをローカルで使用して、現在の設定で発生したエラーや警告を特定します。
enabled_vhostsおよびenabled_farmsディレクトリ内のすべてのファイルがシンボリックリンクであることを確認します。
-
仮想ホスト構成の更新: 仮想ホストのエントリに、必要なすべてのサーバーエイリアスが含まれていることを確認してください:
ServerAlias "*example.com" "*.local" "localhost" "127.0.0.1" "*.adobeaemcloud.net" "*.adobeaemcloud.com" -
有効なファームの名前を変更: 有効なファームファイル名から数字のプレフィックス(
00_、01_など)を削除します。ファームの選択中に、アルファベットの逆の順序の問題が発生する可能性があります。 -
デバッグログを有効にする: Dispatcher ログをデバッグモードに設定し、ファームの選択またはエラーの発生に関連するログスニペットをキャプチャして、さらに分析します。
-
クライアントヘッダールールの確認:
clientheaders.anyなど、ハードコーディングされたプレースホルダー値について、クライアントヘッダールール(default_clientheaders.anyや'localhost'など)を調べます。 これらを、受信リクエストに適したマッピングに置き換えます。 -
変更をローカルでテスト: 更新された設定をローカルのDispatcher インスタンスにデプロイし、実稼動環境に変更を適用する前に機能を検証します。
-
更新した設定をデプロイ: 検証したら、パイプラインツールを使用して、更新したDispatcher設定をデプロイします。
-
CDN 設定の確認:
- CDN が顧客ドメイン名を使用するように正しく設定されていることを確認してください。
- X-Forwarded-Host ヘッダーが適切に設定され、
'localhost'のようなプレースホルダー値が含まれていないことを検証します。
-
ドメインルーティングの再テスト: デプロイメント後、各カスタムドメインをテストして、リクエストがそれぞれのファームに正しくルーティングされていることを確認します。
-
デプロイメント後のログを監視: デプロイメント後もDispatcher ログを引き続き監視し、異常値や繰り返しの問題を特定します。