ToolActToolAct

Types MIME

Référence rapide des types MIME d'extension de fichier avec recherche et filtrage par catégorie

Total 115 个类型

Document(17)

.pdf

application/pdf

.doc

application/msword

.docx

application/vnd.openxmlformats-officedocument.wordprocessingml.document

.xls

application/vnd.ms-excel

.xlsx

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

.ppt

application/vnd.ms-powerpoint

.pptx

application/vnd.openxmlformats-officedocument.presentationml.presentation

.txt

text/plain

.rtf

application/rtf

.odt

application/vnd.oasis.opendocument.text

.ods

application/vnd.oasis.opendocument.spreadsheet

.odp

application/vnd.oasis.opendocument.presentation

.csv

text/csv

.json

application/json

.xml

application/xml

.html

text/html

.htm

text/html

Image(15)

.jpg

image/jpeg

.jpeg

image/jpeg

.png

image/png

.gif

image/gif

.webp

image/webp

.svg

image/svg+xml

.ico

image/x-icon

.bmp

image/bmp

.tiff

image/tiff

.tif

image/tiff

.avif

image/avif

.heic

image/heic

.heif

image/heif

.psd

image/vnd.adobe.photoshop

.raw

image/raw

Audio(10)

.mp3

audio/mpeg

.wav

audio/wav

.ogg

audio/ogg

.m4a

audio/mp4

.flac

audio/flac

.aac

audio/aac

.wma

audio/x-ms-wma

.aiff

audio/aiff

.mid

audio/midi

.midi

audio/midi

Vidéo(12)

.mp4

video/mp4

.webm

video/webm

.avi

video/x-msvideo

.mov

video/quicktime

.wmv

video/x-ms-wmv

.flv

video/x-flv

.mkv

video/x-matroska

.m4v

video/mp4

.mpeg

video/mpeg

.mpg

video/mpeg

.3gp

video/3gpp

.m2ts

video/mp2t

Archive(9)

.zip

application/zip

.rar

application/vnd.rar

.7z

application/x-7z-compressed

.tar

application/x-tar

.gz

application/gzip

.bz2

application/x-bzip2

.xz

application/x-xz

.iso

application/x-iso9660-image

.dmg

application/x-apple-diskimage

Code(31)

.js

application/javascript

.mjs

application/javascript

.ts

application/typescript

.tsx

application/typescript

.jsx

application/javascript

.css

text/css

.scss

text/x-scss

.sass

text/x-sass

.less

text/x-less

.py

text/x-python

.java

text/x-java

.c

text/x-c

.cpp

text/x-c++

.h

text/x-c

.hpp

text/x-c++

.cs

text/x-csharp

.go

text/x-go

.rs

text/x-rust

.rb

text/x-ruby

.php

text/x-php

.swift

text/x-swift

.kt

text/x-kotlin

.sql

application/sql

.sh

application/x-sh

.bash

application/x-sh

.yaml

application/x-yaml

.yml

application/x-yaml

.toml

application/toml

.ini

text/x-ini

.vue

text/x-vue

.svelte

text/x-svelte

Police(5)

.woff

font/woff

.woff2

font/woff2

.ttf

font/ttf

.otf

font/otf

.eot

application/vnd.ms-fontobject

Autre(16)

.exe

application/vnd.microsoft.portable-executable

.msi

application/x-msi

.apk

application/vnd.android.package-archive

.ipa

application/octet-stream

.deb

application/vnd.debian.binary-package

.rpm

application/x-rpm

.jar

application/java-archive

.war

application/java-archive

.swf

application/x-shockwave-flash

.crx

application/x-chrome-extension

.xpi

application/x-xpinstall

.torrent

application/x-bittorrent

.ics

text/calendar

.vcf

text/vcard

.epub

application/epub+zip

.mobi

application/x-mobipocket-ebook

Qu'est-ce qu'un type MIME ?

Les types MIME (Extensions Multipurpose Internet Mail) sont un standard pour indiquer la nature et le format des documents, fichiers ou flux d'octets. Les navigateurs et serveurs utilisent les types MIME pour déterminer comment gérer le contenu. Par exemple, recevoir image/jpeg indique au navigateur d'afficher une image. Les types MIME décrivent la nature du contenu d’un fichier ou d’une réponse HTTP, comme text/html, application/json, image/png ou application/pdf. Ils influencent rendu navigateur, téléchargements, parsing d’API, validation d’upload, cache et sécurité. Extension et type MIME ne correspondent pas toujours, d’où l’intérêt de les vérifier lors d’un diagnostic serveur, fichier inconnu ou problème d’envoi. Pour la sécurité, il ne faut pas leur faire confiance aveuglément; inspection du contenu, règles d’extension et liste autorisée doivent être combinées.

Comment utiliser

Référence rapide

  1. Utilisez la barre de recherche pour trouver une extension ou un type MIME précis
  2. Cliquez sur les étiquettes de catégorie pour filtrer par type de fichier
  3. Cliquez sur les boutons « Ext » ou « MIME » pour copier le contenu correspondant
  4. Parcourez les catégories pour une recherche rapide : documents, images, audio, vidéo, archives, code, polices, etc.

Notes sur la recherche

  • Les types MIME sont des conventions utilisées par les serveurs, navigateurs et applications ; l'extension du fichier seule ne garantit pas son contenu réel.
  • Pour les envois et les contrôles de sécurité, validez si possible à la fois le type MIME déclaré et la signature du fichier.

Cas d’utilisation

Rechercher des types MIME par extensionRecherchez des extensions ou des chaînes MIME parmi les documents, images, audio, vidéo, archives, fichiers de code, polices et autres types courants. Les résultats restent groupés par catégorie lorsque le filtre « Tous » est actif, ce qui facilite la navigation par rapport à une table plate unique. La recherche plein texte fonctionne aussi bien sur l’extension (png, webp, json) que sur la valeur MIME (image/png, application/json), couvrant ainsi les deux points de départ.
Copier des valeurs pour en-têtes d’upload et de réponseChaque carte permet de copier soit l’extension, soit la valeur MIME, ce qui est pratique pour configurer les listes accept des uploads, les en-têtes Content-Type, les métadonnées de stockage, les règles CDN ou les tables de validation côté serveur. La référence est embarquée dans la page et fonctionne donc hors ligne et sur des machines internes sans accès au registre IANA. Le bouton de copie écrit la valeur telle quelle dans le presse-papiers, sans espace ni guillemets parasites.
Vérifier la couverture des catégories lors du développement de fonctionnalités fichierLes filtres par catégorie et le compteur de résultats aident les équipes produit et développement à déterminer quelles familles de fichiers une fonctionnalité reconnaît actuellement. C’est une référence rapide pour les formats courants, pas un registre normatif complet. Une lacune dans la section archive ou police pointe souvent vers une fonctionnalité qui rejette silencieusement des uploads.
Construire des en-têtes Content-Type pour des réponses d’API RESTCopiez des valeurs exactes comme application/vnd.api+json ou application/x-ndjson dans les appels response.setHeader(). Vérifiez les suffixes inhabituels via le filtre de catégorie pour éviter que des réponses JSON-LD, GeoJSON ou WebAssembly soient traitées comme du texte brut. Les conventions vendor-specific +json et +xml (RFC 6839) portent une information significative sur la structure de la charge utile, et une faute de frappe ici casse généralement le parseur client.
Couvrir l’IANA, les préfixes x- expérimentaux et le content sniffingLe registre IANA est la source canonique des types MIME enregistrés, mais il ne liste pas toutes les valeurs en usage : les entrées expérimentales utilisent le préfixe x- (application/x-tar, application/x-rar-compressed) et n’ont jamais été normalisées, même si elles figurent dans les fichiers mime.types de nginx et Apache. Pour la sécurité, le content sniffing (lecture des octets magiques en début de fichier) est plus fiable que la confiance accordée à l’en-tête Content-Type déclaré, et les navigateurs modernes envoient X-Content-Type-Options: nosniff pour désactiver le reniflage hérité. Utilisez la table de recherche pour trouver une valeur d’en-tête, puis validez les octets réels côté serveur avant de servir le fichier.

Principe technique

Les types MIME (Multipurpose Internet Mail Extensions) sont des identifiants normalisés pour les formats de données, définis à l'origine dans RFC 2045/RFC 2046 pour les pièces jointes des courriels, puis adoptés par HTTP (RFC 7231 §3.1.1.5) pour la négociation de contenu web. Un type MIME est structuré sous la forme type/sous-type — le type déclare la catégorie générale (text, image, audio, video, application, multipart, font, model) et le sous-type spécifie le format exact (par ex. text/html, image/png, application/json). Des paramètres optionnels suivent un point-virgule (text/html; charset=utf-8). L'Internet Assigned Numbers Authority (IANA) maintient le registre officiel des types MIME sur iana.org/assignments/media-types. L'enregistrement suit RFC 6838, qui définit un processus de révision nécessitant un document de spécification, des considérations de sécurité et des notes d'interopérabilité. Les types non enregistrés peuvent utiliser le préfixe x- (par ex. application/x-tar) comme convention pour les formats expérimentaux ou propriétaires, bien que RFC 6648 recommande d'éviter le préfixe x- au profit d'un enregistrement correct. Dans HTTP, l'en-tête Content-Type indique au client comment interpréter le corps de la réponse. Un serveur renvoyant Content-Type: image/svg+xml déclenche le moteur de rendu SVG du navigateur ; Content-Type: application/octet-stream déclenche une invite de téléchargement car le navigateur ne peut pas déterminer le format. Le navigateur utilise également les informations de type MIME pour le reniflage MIME (MIME sniffing) — lorsque le serveur omet Content-Type ou envoie un type générique, le navigateur peut inspecter les premiers octets de la réponse (octets magiques) pour deviner le format réel. Ce comportement est contrôlé par l'en-tête X-Content-Type-Options: nosniff, qui désactive le reniflage et exige que le serveur déclare le type correct. Pour les téléchargements de fichiers, l'en-tête Accept indique au serveur quels types MIME le client attend en réponse, tandis que l'attribut accept de l'élément input restreint le sélecteur de fichier à des types spécifiques (par ex. accept="image/png, image/jpeg"). Côté serveur, les fichiers téléchargés doivent être validés à la fois par leur type MIME déclaré et par leur signature de fichier (octets magiques), car aucun des deux n'est fiable à lui seul — un fichier nommé image.png avec Content-Type: image/png pourrait contenir du code exécutable. L'outil sert de référence pour rechercher le type MIME canonique d'une extension de fichier donnée, couvrant plus de 100 formats courants répartis en huit catégories.

  • Structure RFC 2046 : type/sous-type — le type indique la catégorie générale de contenu et le sous-type le format exact ; des paramètres optionnels suivent un point-virgule (text/html; charset=utf-8) et sont insensibles à la casse selon la spécification, bien que la convention soit d'utiliser des minuscules.
  • Enregistrement IANA (RFC 6838) : les nouveaux types de média nécessitent un document de spécification, une section de considérations de sécurité et des notes d'interopérabilité — le processus de révision garantit que les types sont bien documentés et que les conflits sont évités avant leur entrée dans le registre.
  • En-tête HTTP Content-Type : le serveur déclare le type MIME du corps de la réponse ; les navigateurs l'utilisent pour sélectionner le moteur de rendu approprié (analyseur HTML, décodeur d'image, visionneuse PDF) ou déclencher un téléchargement — un Content-Type incorrect est la cause la plus fréquente des bugs de « téléchargement au lieu de l'affichage ».
  • Reniflage MIME et X-Content-Type-Options : lorsque Content-Type est absent ou générique, les navigateurs peuvent inspecter les octets magiques pour deviner le format — X-Content-Type-Options: nosniff désactive ce comportement et exige une correspondance exacte du Content-Type, ce qui constitue une bonne pratique de sécurité.
  • application/octet-stream : le type de repli binaire générique — les navigateurs le traitent comme un flux opaque et déclenchent un téléchargement, ce qui en fait la valeur par défaut la plus sûre lorsque le serveur ne peut pas déterminer le format, mais cela empêche l'aperçu dans le navigateur de contenu autrement affichable.
  • Validation des téléchargements de fichiers : l'attribut accept du filtre input côté client, mais la validation côté serveur doit vérifier à la fois le Content-Type déclaré et les octets magiques du fichier — une incohérence entre l'extension, le type MIME et la signature du fichier est un signal d'alarme pour les téléchargements malveillants.
  • Types propriétaires et expérimentaux : la convention du préfixe x- (application/x-tar, video/x-matroska) précède le processus d'enregistrement formel — RFC 6648 recommande de migrer ces types vers des types IANA correctement enregistrés lorsque c'est possible, mais beaucoup restent largement utilisés.

Exemples

Configuration mime.types Nginx

types {
  text/html             html htm;
  image/jpeg            jpg jpeg;
  application/pdf       pdf;
  application/javascript js;
}

Note: chaque ligne associe un type MIME à une ou plusieurs extensions de fichier ; Nginx envoie le type dans l'en-tête Content-Type
IANA: https://www.iana.org/assignments/media-types/ tient le registre officiel

En-tête de réponse HTTP Content-Type

Content-Type: application/json; charset=utf-8

Note: le charset est facultatif mais recommandé pour text/* et application/json ; les clients l'utilisent pour décoder correctement le corps
RFC: la section 3.1.1.5 du RFC 7231 définit la sémantique de l'en-tête Content-Type
MDN: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type

Constructeur Blob du navigateur

const blob = new Blob([data], { type: 'application/pdf' });
const url  = URL.createObjectURL(blob);

Note: le type devient le Content-Type lors du téléchargement ou de l'envoi du blob ; choisissez un sous-type précis pour éviter application/octet-stream
MDN: https://developer.mozilla.org/en-US/docs/Web/API/Blob/Blob documente le paramètre type

Types MIME courants par catégorie

Text:       text/plain, text/html, text/css, text/javascript, text/markdown
Image:      image/jpeg, image/png, image/gif, image/webp, image/svg+xml
Audio:      audio/mpeg, audio/wav, audio/ogg, audio/aac
Video:      video/mp4, video/webm, video/ogg
Application: application/json, application/pdf, application/xml, application/zip

L'IANA les classe dans le registre Media Types sous les noms de type de premier niveau

FAQ

Qu'est-ce qu'un type MIME et pourquoi est-ce important ?

Un type MIME (Multipurpose Internet Mail Extensions, aussi appelé media type) est une étiquette courte comme text/html, image/png ou application/json qui indique aux logiciels destinataires comment interpréter un flux d'octets. Navigateurs, clients mail, formulaires de téléversement et API s'y appuient pour décider de rendre, télécharger, parser ou rejeter le contenu.

En quoi le type MIME diffère-t-il de l'extension de fichier ?

L'extension fait partie du nom de fichier et n'est qu'une convention de nommage. Le type MIME est envoyé sur le réseau dans l'en-tête Content-Type. Ils sont généralement cohérents (.png ↔ image/png), mais un serveur peut servir n'importe quelle extension avec n'importe quel type MIME, et les navigateurs font bien plus confiance à l'en-tête qu'à l'extension. Aligner les deux est une bonne pratique ; se fier à l'extension pour la sécurité est un bug.

Que signifie application/octet-stream ?

C'est le type MIME générique pour des « données binaires arbitraires ». Les navigateurs le recevant proposeront un téléchargement plutôt que de tenter un rendu. Les serveurs y reviennent quand ils ne peuvent pas identifier le format, ce qui révèle généralement un mappage MIME manquant ou mal configuré. Remplacez-le par le type spécifique correct dès que possible.

Puis-je faire confiance à Content-Type pour valider des fichiers téléversés ?

Pas seul. N'importe qui peut prétendre image/png en téléversant un exécutable. Inspectez toujours les octets réels (nombres magiques, en-tête PNG 89 50 4E 47, en-tête PDF %PDF-, en-tête ZIP PK), vérifiez l'extension, appliquez une liste blanche côté serveur et limitez la taille. Le MIME fourni par le navigateur lors d'un upload est un indice, pas une preuve.

Pourquoi un téléchargement enregistre-t-il avec le mauvais nom ou la mauvaise extension ?

Les navigateurs choisissent le nom enregistré dans cet ordre : en-tête Content-Disposition, chemin de l'URL, type MIME. Si le serveur renvoie text/html pour un téléchargement PDF, le navigateur peut l'enregistrer avec .html. Définissez Content-Disposition: attachment; filename="name.pdf" et le type MIME correct application/pdf pour éviter les surprises.

Comment trouver le bon type MIME pour un format personnalisé ou rare ?

Consultez d'abord le registre IANA des media types (iana.org/assignments/media-types). Pour les formats non enregistrés ou spécifiques à un éditeur, la convention est application/vnd.* ou application/x-* (par exemple application/vnd.api+json, application/x-7z-compressed). Utilisez la correspondance standard la plus proche avant d'en inventer une nouvelle.

Pourquoi .json et .js affichent-ils des types MIME différents ?

JSON est de la donnée et utilise application/json. JavaScript est du code exécutable servi en text/javascript ou application/javascript (la RFC 9239 a fait de text/javascript le type recommandé). Les confondre a des conséquences : une balise script refusera d'exécuter application/json, et certains serveurs rejettent application/javascript quand ils n'acceptent que la variante text.