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

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

  1. Dispatcherの設定、特にimageおよびPDF アセットのContent-Disposition ヘッダーを設定するルールを確認します。

  2. 新しいヘッダーを設定する前に、既存のContent-Disposition ヘッダーを削除するようにDispatcher設定を更新します。 例えば、次の設定を使用します。

    code language-none
    Header unset Content-Disposition
    Header always set Content-Disposition "inline"
    
  3. 必要に応じて、PDFやその他のファイル形式のルールにも同じ変更を適用します。

  4. Web層設定パイプラインを使用して、更新された設定をデプロイします。 標準のCI/CD パイプラインは、web層の設定変更を受け取らない場合があります。

  5. 影響を受けるアセットパスのDispatcherおよびCDN キャッシュをパージして、更新されたヘッダーが提供されるようにします。

  6. 影響を受けるアセットを取得し、応答ヘッダーを調べて、Content-Disposition ヘッダーが1つだけ返されることを確認します。 例えば、curl -D - <asset-url>.
    を使用します

  7. 応答に単一のContent-Disposition: inline ヘッダーが含まれていることを確認します。

  8. ChromeやSafariなどのブラウザーで、画像が正しく読み込まれることを確認します。

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