Le chargement de l’image échoue en raison de plusieurs en-têtes Content-Disposition dans AEMaaCS
Dans Adobe Experience Manager as a Cloud Service (AEMaaCS), le chargement des images JPEG échoue lorsque les réponses contiennent plusieurs en-têtes de disposition du contenu. Le problème se produit car les réponses d’image affectées contiennent deux en-têtes Content-Disposition , tandis que les réponses de travail n’en contiennent qu’un seul. Pour résoudre ce problème, configurez un seul en-tête de content-disposition.
Description description
Environnement
Adobe Experience Manager as a Cloud Service (AEMaaCS), environnements de production et d’évaluation.
Problème/Symptômes
-
Certaines images JPEG ne se chargent pas dans des navigateurs tels que Chrome, affichant des erreurs telles que ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION.
-
Dans les outils de développement Chrome, les requêtes ayant échoué affichent des en-têtes de réponse manquants ou non valides.
-
Dans Safari, les images peuvent être manquantes pour tous les utilisateurs.
-
Le problème peut être intermittent et affecter certains utilisateurs et utilisatrices ou navigateurs, mais pas d’autres.
-
Les réponses d’image affectées contiennent deux en-têtes
content-disposition(par exemple, les deux en-têtes intégrés et les pièces jointes), tandis que les réponses de travail en contiennent un seul. -
Exemple de réponse défaillante :
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 -
Exemple de réponse correcte :
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
Cause première
Ce problème se produit lorsque la configuration Dispatcher ajoute un nouvel en-tête content-disposition sans supprimer un en-tête existant de la réponse d’origine. Par conséquent, plusieurs en-têtes content-disposition apparaissent dans la réponse, ce qui est rejeté par des navigateurs tels que Chrome et entraîne l’échec du chargement des images.
Résolution resolution
Suivez les étapes ci-dessous pour résoudre le problème :
-
Passez en revue votre configuration Dispatcher, en particulier les règles qui définissent l’en-tête
Content-Dispositionpour les ressources d’image et de PDF -
Mettez à jour la configuration Dispatcher pour supprimer tout en-tête de
Content-Dispositionexistant avant d’en définir un nouveau. Par exemple, utilisez la configuration suivante :code language-none Header unset Content-Disposition Header always set Content-Disposition "inline" -
Appliquez les mêmes modifications aux règles pour les fichiers PDF ou d’autres types de fichiers selon les besoins.
-
Déployez la configuration mise à jour à l’aide du pipeline de configuration de niveau web. Notez que les pipelines CI/CD standard peuvent ne pas prendre en charge les modifications de configuration de niveau web.
-
Purge des caches Dispatcher et CDN pour les chemins d’accès aux ressources affectés afin de garantir que les en-têtes mis à jour sont diffusés.
-
Récupérez les ressources affectées et examinez les en-têtes de réponse pour confirmer qu’un seul en-tête
Content-Dispositionest renvoyé. Par exemple, utilisezcurl -D - <asset-url>. -
Vérifiez que la réponse contient un seul en-tête
Content-Disposition: inline. -
Vérifiez dans les navigateurs tels que Chrome et Safari que les images se chargent correctement.