Quel est le type MIME des fichiers .xlsx ?
Le type MIME (type de média) des fichiers Microsoft Excel portant l’extension .xlsx est application/vnd.openxmlformats-officedocument.spreadsheetml.sheet. Il s’agit d’une archive ZIP de XML, déjà compressée. Servez-les avec ce type exact pour que les navigateurs conservent l’extension .xlsx au téléchargement.
En-tête Content-Type
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8
Les types textuels doivent inclure un charset afin que le navigateur décode correctement les caractères.
Configuration du serveur
| Serveur | Configuration |
|---|---|
Nginx (mime.types ou types {}) | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx; |
Apache (.htaccess) | AddType application/vnd.openxmlformats-officedocument.spreadsheetml.sheet .xlsx |
IIS (web.config) | <mimeMap fileExtension=".xlsx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" /> |
| Node.js / Express | res.type('xlsx') ou res.setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8') |
| Amazon S3 | Définissez Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet sur l’objet (métadonnées), ou transmettez --content-type application/vnd.openxmlformats-officedocument.spreadsheetml.sheet à aws s3 cp |
Faut-il compresser les fichiers .xlsx ?
Non. Les fichiers Microsoft Excel sont déjà compressés en interne : gzip ou Brotli gaspilleraient du CPU et réduiraient à peine la taille, voire l’augmenteraient parfois. Ne laissez pas application/vnd.openxmlformats-officedocument.spreadsheetml.sheet dans votre configuration de compression.
Pourquoi le type MIME est important
Les navigateurs décident de ce qu’il faut faire d’une réponse (afficher, exécuter, lire ou télécharger) à partir de l’en-tête Content-Type, et non de l’extension du fichier. Avec X-Content-Type-Options: nosniff, un mauvais type entraîne le blocage pur et simple des feuilles de style et des scripts. Pour les envois de fichiers, ne faites jamais confiance au type transmis par le client ; vérifiez plutôt le contenu du fichier (ses octets magiques) côté serveur.
Recherche de types MIME
Recherchez toutes les extensions de fichiers et tous les types MIME courants, avec des en-têtes Content-Type prêts à copier.
Questions fréquentes
Quel est le type MIME du .xlsx ?
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.Comment définir le Content-Type du .xlsx dans Nginx ?
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx; figure dans le bloc types (généralement dans /etc/nginx/mime.types), puis rechargez Nginx.