AEMaaCSの複数のContent-Disposition ヘッダーにより、画像の読み込みに失敗します
Adobe Experience Manager as a Cloud Service(AEMaaCS)では、レスポンスに複数のContent-Disposition ヘッダーが含まれている場合、JPEG画像の読み込みに失敗します。 この問題は、影響を受ける画像の応答に2つのContent-Disposition ヘッダーが含まれているのに対し、作業中の応答には1つしか含まれていないために発生します。 この問題を解決するには、単一のcontent-disposition ヘッダーを設定してください。
説明 description
環境
Adobe Experience Manager as a Cloud Service(AEMaaCS)、実稼動環境およびステージ環境
問題/症状
-
一部のJPEG画像がChromeなどのブラウザーで読み込まれず、ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITIONなどのエラーが表示されます。
-
Chrome DevToolsでは、失敗したリクエストに応答ヘッダーが見つからないか無効であることが示されます。
-
Safariでは、すべてのユーザーに画像が表示されない場合があります。
-
この問題は断続的に発生する可能性があり、一部のユーザーまたはブラウザーに影響を与えますが、他のユーザーには影響しません。
-
影響を受ける画像応答には2つの
content-dispositionヘッダー(インラインと添付ファイルの両方など)が含まれていますが、作業応答には1つしか含まれていません。 -
失敗した応答の例:
code language-none HTTP HTTP/1.1 200 OK content-type: image/jpeg content-disposition: inline content-disposition: attachment x-cache: HIT Age: 760 ETag: "3445-610b720f12c80" Last-Modified: Tue, 06 Feb 2024 14:09:38 GMT -
正しい応答の例:
code language-none HTTP HTTP/1.1 200 OK content-type: image/jpeg content-disposition: inline x-cache: HIT Age: 921 ETag: "0x8DE77BA2921C01B" Last-Modified: Sun, 01 Mar 2026 17:44:17 GMT
根本原因
この問題は、Dispatcherの設定で、既存のヘッダーをオリジンのレスポンスから削除せずに新しいcontent-disposition ヘッダーが追加された場合に発生します。 その結果、複数のcontent-disposition個のヘッダーが応答に表示され、Chromeなどのブラウザーが拒否し、画像の読み込みに失敗します。
解決策 resolution
問題を解決するには、次の手順に従います。
-
Dispatcherの設定、特にimageおよびPDF アセットの
Content-Dispositionヘッダーを設定するルールを確認します。 -
新しいヘッダーを設定する前に、既存の
Content-Dispositionヘッダーを削除するようにDispatcher設定を更新します。 例えば、次の設定を使用します。code language-none Header unset Content-Disposition Header always set Content-Disposition "inline" -
必要に応じて、PDFやその他のファイル形式のルールにも同じ変更を適用します。
-
Web層設定パイプラインを使用して、更新された設定をデプロイします。 標準のCI/CD パイプラインは、web層の設定変更を受け取らない場合があります。
-
影響を受けるアセットパスのDispatcherおよびCDN キャッシュをパージして、更新されたヘッダーが提供されるようにします。
-
影響を受けるアセットを取得し、応答ヘッダーを調べて、
Content-Dispositionヘッダーが1つだけ返されることを確認します。 例えば、curl -D - <asset-url>.
を使用します -
応答に単一の
Content-Disposition: inlineヘッダーが含まれていることを確認します。 -
ChromeやSafariなどのブラウザーで、画像が正しく読み込まれることを確認します。