Description du problème
Lorsque vous accédez à un objet depuis un navigateur en utilisant un nom de domaine Object Storage Service, le navigateur peut télécharger l'objet au lieu de l'afficher.
Causes
Object Storage Service force le téléchargement de certains objets présents dans les buckets créés après 17 h 00 le 23 septembre 2019. Ce comportement se produit lorsque vous accédez à un objet via un nom de domaine OSS et que le type de contenu (Content-Type) de l'objet correspond à l'une des valeurs suivantes :
image/jpeg
image/gif
image/tiff
image/png
image/webp
image/svg+xml
image/bmp
image/x-ms-bmp
image/x-cmu-raster
image/exr
image/x-icon
image/heic
Dans ce cas, Object Storage Service ajoute les deux en-têtes suivants à la réponse :
x-oss-force-download: true
Content-Disposition: attachment
Un navigateur standard lance un téléchargement plutôt qu'un aperçu lorsqu'il reçoit l'en-tête Content-Disposition: attachment.
Exemple de problème
Prenons l'exemple d'un bucket créé après 17 h 00 le 23 septembre 2019. Il contient un objet nommé apple.jpeg dont le Content-Type est image/jpeg. Lorsque vous accédez à cet objet depuis un navigateur en utilisant un nom de domaine OSS, la réponse renvoyée par Object Storage Service inclut les deux en-têtes mentionnés précédemment. L'en-tête Content-Disposition: attachment déclenche un téléchargement au lieu d'un aperçu dans un navigateur standard.
GET /apple.jpeg HTTP/1.1
HTTP/1.1 200 OK
Content-Type: image/jpeg
Content-Disposition: attachment
x-oss-force-download: true
Solution
Pour éviter que Object Storage Service ne renvoie les en-têtes imposant le téléchargement, accédez à l'objet en utilisant un nom de domaine personnalisé. Pour plus d'informations, consultez Associer des noms de domaine personnalisés.