Quelle est la différence entre "image/png" et "image/x-png"?
Le x-
le préfixe est donné aux types MIME non standard (c'est-à-dire non enregistrés auprès de l'IANA). Je suppose donc que image/x-png
aurait été PNG avant la standardisation du type MIME.
6.3. Nouveaux encodages de transfert de contenu
Les implémenteurs peuvent, si nécessaire, définir des valeurs privées Content-Transfer-Encoding, mais doivent utiliser un x-token, qui est un nom préfixé par "
X-
”, Pour indiquer son statut non standard, e. g., "Content-Transfer-Encoding: x-my-new-encoding
”. Des valeurs supplémentaires normalisées de transfert de contenu doivent être spécifiées par un RFC de suivi des normes. Les exigences auxquelles ces spécifications doivent satisfaire sont données dans RFC 2048 . En tant que tel, tous les espaces de noms de codage de transfert de contenu, sauf celui commençant par "X-
”Est explicitement réservé à l'IETF pour une utilisation future.— RFC 2045 - Extensions de messagerie Internet polyvalentes, section 6.
Ceci est également documenté dans la spécification PNG. Voir réponse de FalseVinylShrub .
Selon http://www.w3.org/TR/PNG/#A-Media-type
Le type de média Internet "image/png" est le type de média Internet pour PNG [RFC-2045], [RFC-2048]. Il est recommandé que les implémentations reconnaissent également le type de support "image/x-png".
Donc, si vous livrez ou téléchargez une image PNG, "image/png" est la bonne à utiliser. Cependant, si vous acceptez les téléchargements ou si vous interprétez le type de média d'une autre manière, il est recommandé d'accepter l'un ou l'autre.
Soit dit en passant, j'ai trouvé une référence de 2008 selon laquelle Internet Explorer (version non spécifiée) téléchargeait des images PNG avec un type d'image/x-png, donc c'était un vrai problème pour quelqu'un aussi récemment que cela.
Selon article de Wikipedia sur les types de médias Internet , et l'article qu'il cite ...
Les types ou sous-types commençant par x ne sont pas standard
Donc, je suppose que "image/x-png" est probablement un vestige du temps où png était assez nouveau et, en tant que tel, non standardisé.
image/x-png était le type avant que PNG ne soit accepté par l'IANA comme type mime officiel.
http://www.iana.org/assignments/media-types/image/
Le type MIME image/png officiel pour PNG, approuvé le 14 octobre 1996