Les liens de téléchargement pour les pièces jointes .txt (et .yaml) affichent le texte brut au lieu du téléchargement

Sur notre instance Discourse, lorsqu’un utilisateur télécharge un fichier .txt ou .yaml en pièce jointe, le nom du fichier s’affiche sous forme de lien de téléchargement :

links

Cependant, en cliquant sur ces liens, le fichier n’est pas téléchargé : une nouvelle onglet du navigateur s’ouvre avec le texte brut, chargé depuis une URL du type :

https://discourse-attachments.s3.dualstack.us-west-2.amazonaws.com/original/2X/4/xxxxxxxx.txt

Comment faire en sorte que le lien de téléchargement télécharge réellement le fichier ? L’activation des « téléversements sécurisés » a été suggérée comme solution, mais après en avoir lu davantage, je suis un peu hésitant à l’activer.

Merci,

– Charles

Oui, il s’agit probablement d’un problème de configuration de votre forum, peut-être lié au CDN ou à S3.

Je pourrais me tromper, mais je pense que cela concerne la façon dont les fichiers téléchargés sont servis sur votre forum, que ce soit via un stockage local ou un CDN S3/object/. Cela pourrait aussi être lié à l’en-tête de réponse HTTP ?

Je pense que si l’en-tête content-disposition: attachment est présent, les navigateurs devraient généralement télécharger le fichier, mais s’il est absent, les navigateurs ouvrent souvent les fichiers .txt ou .yml.

test.yml (5 octets)

^ Ce fichier .yml devrait se télécharger comme prévu.

edit : je pense que ce sujet pourrait être pertinent :