AEM as a Cloud ServiceのDAM アセットのHTTP 302応答について
この記事では、Adobe Experience Manager as a Cloud Service(AEMaaCS)でDAM アセットに HTTP 302 応答が表示される理由を説明し、これらのリダイレクトが期待されるタイミングを明確にし、ログ監視で実際のリダイレクトの問題と区別するためのガイダンスを提供します。
説明 description
AEM as a Cloud Serviceでは、大きなDAM アセットに対するリクエストは、Dispatcher ログに HTTP 302 応答をもたらします。 このビヘイビアーは、AEM Publishがアセットリクエストをクラウドストレージバックエンドにリダイレクトして効率的に配信する、プラットフォームのDirect Binary Access (DBA)設計の一部です。 エンドユーザーとCDN レイヤーには通常 200 OK 応答が表示されますが、中間 302 応答は内部ログに表示され、監視またはトラブルシューティング中に混乱が生じます。
環境
Adobe Experience Manager as a Cloud Service(AEMaaCS)(すべてのバージョン)
症状
- DAM アセットに対する断続的な HTTP 302 応答(例:
/content/dam/<path>/asset.pdf)は、Dispatcher アクセスログに表示されます。 - これらの 302 応答は、クライアントサイドから再現可能ではありません。パブリック URLに直接要求すると、200 OKが返されます。
- CDN ログには、302ではなく、200/304の応答のみが表示されます。
- Dispatcher ログでは、これらのリクエストは
[ action none]として表示され、リダイレクト先は示されません。 - その他のDAM アセット(画像やPDFなど)にも、302件の同様の回答が表示されています。
- 302要求には、多くの場合、User-AgentまたはReferrer情報がありません。
原因
302応答は、Direct Binary Access (DBA) ワークフローの一部として、AEM Publish DAM バイナリサーブレットによって生成されます。 このサーブレットは、クラウドストレージバックエンドを指す場所ヘッダーを含むHTTP 302 リダイレクトを発行します。 Dispatcherは 302 応答をログに記録し、CDN レイヤーはリダイレクトに従ってアセットを取得し、200 OKをクライアントに返します。 これは期待されており、設計されています。
解決策 resolution
問題を解決するには、次の手順に従います。
-
Direct Binary Access (DBA)を使用している場合、Dispatcher ログ内のDAM アセットに対する HTTP 302 応答が期待されることを理解してください。 これらはエラーではなく、設定の誤りを示すものではありません。
-
監視の潜在的なリダイレクトの問題から予想されるDBA 302を区別するには、次の手順を実行します。
-
想定されるDBA 302 s:
-
リクエストパスは
/content/dam/...で始まります。 -
Dispatcherのログに
[ action none]が表示されます。 -
302応答の場所ヘッダーが、クラウドストレージ URL パターンと一致しています。
-
潜在的なリダイレクトの問題:
/content/dam/...外のパスに対する3xx件の応答- Apache RewriteRuleまたはバニティ URL設定によるリダイレクト
- サイトのルート、ロケールリダイレクト、またはログインページを指す場所ヘッダー
-
-
ログ監視ツールで、上記の想定されるDBA パターンに一致する 302 の応答をフィルタリングまたは注釈で追加して、リダイレクト問題レポートでの誤検出を回避します。 例えば、パスが
/content/dam/で始まり、応答コードが 302 のログエントリをフィルタリングできます。 -
DBA条件に一致しない予期しない 3xx 件の応答に調査を集中させます。
-
確認するには、エンドユーザーがパブリック URLを介してDAM アセット要求に対して 200 OK を受け取り、CDN レイヤーが 302 件の応答を報告していないことを確認します。