AEM内の複数のDispatcher ファームを使用したターゲット設定のキャッシュ削除の設定

AEMで複数のDispatcher ファームを設定すると、localhost URL の使用時に、キャッシュのフラッシュリクエストが正しくルーティングされない可能性があります。 この記事では、ホストベースの URL を使用して 2 つ目のDispatcher フラッシュエージェントを設定し、GraphQLのキャッシュのエビクションが正しいドメインとドキュメントルートをターゲットにしていることを確認する方法について説明します。

説明 description

環境

  • 製品 : Adobe Experience Manager(AEM)オンプレミス
  • バージョン :6.5
  • Apache バージョン :2.2 (ローカルテスト)
  • 設定 :同じ Apache インスタンス上の複数のファームと仮想ホスト(ドメインごとに個別のドックルート)

問題/症状

  • 特定のドメインを対象としたキャッシュフラッシュリクエストが、誤って同じファームにルーティングされるので、すべての無効化は、リクエストされたパスやドメインに関係なく、1 つのドックルートにのみ影響します。
  • この問題は、フラッシュエージェントで localhost URL を使用すると、ホストヘッダーの評価が原因で、すべてのリクエストが最後に読み込まれたファームによって処理される場合に発生します。

解決策 resolution

この問題を解決するには、次の手順に従います。

  1. 目的とするドメインに厳密に一致する個別の仮想ホストパターンで各Dispatcher ファームが設定されていることを確認します。
  2. Apache 仮想ホストを設定して、各 ServerName または ServerAlias が各ドメインに一意に対応するようにします。
  3. ローカル環境の場合、hosts ファイルに、各ドメインを適切な IP アドレスにマッピングするエントリを追加します。
  4. localhost の URL ではなく、ホストベースの URL を使用するようにAEM フラッシュエージェントを設定します。
  5. 公開サーバーとDispatcher サーバーが異なるマシン上にある場合は、公開サーバーからの DNS またはホストのファイル解決が、それらのホスト名をDispatcher サーバーの IP アドレスに指定していることを確認します。
  6. Apache が競合なしで正しいポート(ポート 80 など)をリッスンしていることを確認します。
  7. フラッシュエージェントを介して送信されたキャッシュ無効化リクエストが、正しいルーティング動作を観察して、それぞれのファームおよびドックルートに到達することを確認します。

:

  • Dispatcherは、URL パスセグメントではなく、HTTP ホストヘッダーに厳密に基づいてファームを評価します。
  • フラッシュエージェント URL で localhost を使用すると、すべてのリクエストのホストヘッダーが localhost に設定され、最後に読み込まれたファームへのフォールバックルーティングが行われます。
  • ここで説明する設定は、ホスト名解決が正しく設定されている場合に、パブリッシュとDispatcherが同じサーバー上で実行されても別のサーバー上で実行されても機能します。
  • Apache が適切なホストマッピングでポート 80 を既にリッスンしている場合は、追加の変更は必要ありません。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f