Quel est le type MIME des fichiers .svg ?
Le type MIME (type de média) des fichiers image SVG portant l’extension .svg est image/svg+xml. Le SVG étant du texte, gzip et Brotli le réduisent très bien. Servir des SVG envoyés par les utilisateurs depuis votre domaine principal est risqué, car un SVG peut contenir des scripts : utilisez un domaine séparé ou assainissez les fichiers envoyés.
En-tête Content-Type
Content-Type: image/svg+xml; charset=utf-8
Les types basés sur du texte doivent inclure un charset afin que le navigateur décode correctement les caractères.
Configuration du serveur
| Serveur | Configuration |
|---|---|
Nginx (mime.types ou types {}) | image/svg+xml svg; |
Apache (.htaccess) | AddType image/svg+xml .svg |
IIS (web.config) | <mimeMap fileExtension=".svg" mimeType="image/svg+xml" /> |
| Node.js / Express | res.type('svg') ou res.setHeader('Content-Type', 'image/svg+xml; charset=utf-8') |
| Amazon S3 | Définissez Content-Type: image/svg+xml sur l’objet (métadonnées), ou passez --content-type image/svg+xml à aws s3 cp |
Faut-il compresser les fichiers .svg ?
Oui. Une image SVG étant du texte, activer gzip ou Brotli pour image/svg+xml réduit généralement la taille transférée de 50–80 %. Vérifiez que la liste de compression de votre serveur inclut bien ce type, avec le test de compression de site web.
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 type incorrect 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 courantes et tous les types MIME, avec des en-têtes Content-Type prêts à copier.
Questions fréquentes
Quel est le type MIME pour .svg ?
image/svg+xml.Comment définir le Content-Type pour .svg dans Nginx ?
image/svg+xml svg; figure dans le bloc types (généralement dans /etc/nginx/mime.types), puis rechargez Nginx.