Manual:MIME type detection/fr

MediaWiki essaie de détecter le type de MIME des fichers que vous téléversez, et rejette les fichiers dont l'extension ne correspond pas au type de MIME (« Le fichier est corrompu ou possède une extension incorrecte »). Si cette erreur apparait pour des fichiers valides, essayez d'utiliser une commande externe de détection du type de MIME (voir ci-dessous).

Pour configurer le type de fichier que MediaWiki va accepter lors des téléversements, utilisez.

Détection du MIME
Quand il est installé, MediaWiki utilise le module FileInfo de PHP ou l'ancien module MimeMagic. Si vous obtenez une erreur du type mime_magic ne peut être initialisé, le fichier magique n'est pas disponible, ce module n'est pas configuré correctement &mdash; voir la documentation PHP pour corriger cela, ou utilisez à la place une commande externe de détection de MIME (voir ci-dessous).

Vous pouvez aussi configurer une commande externe de détection du type de MIME en intialisant l'option. L'initialisation la plus commune est :

Ceci utilise l'utilitaire GNU  pour déterminer le type de fichier, utilisable directement sous Linux. Notez que l'utilitaire  fourni avec d'autres systèmes de type Unix peut ne pas reconnaître l'option , et donc ne fonctionnera pas. L'utilitaire GNU  est également disponible pour Mac OS-X, et pour Windows via Cygwin.

S'il n'y a pas de module MIME et qu'aucune commande externe de détection du type n'est configurée, MediaWiki utilise le module PHP GD pour détecter le type de MIME. Notez bien, que cela ne fonctionne qu'avec certains types bien connus d'images (voir ), les autres fichiers seront acceptés sans contrôle supplémentaire !

Vous pouvez également supprimer complètement le contrôle du type de MIME en intialisant  &mdash; néanmoins notez que cela nuit à la sécurité : on peut alors téléverser des fichers arbitraires ayant une extension inoffensive, mais qui pourront éventuellement ensuite être exécutés ou interprétés d'une manière offensive sur l'ordinateur du client, ou sur le serveur web. En cours : comment ceci est-il relié à ?

Validation du type de MIME
MediaWiki range les types de MIME et les types de médias par défaut dans MimeMap.php.

A partir de MediaWiki 1.24 et pour prendre en charge les types de MIME supplémentaires pour les téléversements sur votre wiki, vous pouvez utiliser l'accroche.

Types supplémentaires
Le type de MIME regroupe les extensions des fichiers appartenant à ce type de MIME. Pour reconnaitre les fichiers d'extension  comme étant du type   pour le Markdown on écrira :

Pensez aussi à ajouter l'extension à pour lui permettre d'être utilisée avec les nouveaux téléversements dans votre wiki.

Vous pouvez également fournir plusieurs extensions de fichiers, par exemple ce qui suit est ce que MediaWiki aurait fait en interne avec JPEG :

Notez que le type MIME de certains fichiers peut être détecté trop légèrement - un format basé sur XML peut s'afficher en tant que text/xml et un format basé sur ZIP, en tant que application/zip. Par conséquent les extensions de fichiers pour de tels formats doivent être associées avec le type MIME le plus général par exemple :

text/xml xml xsl xslt rss rdf application/zip zip jar xpi application/msword doc xls ppt

Informations supplémentaires
Les données mime info servent à résoudre les alias des types de MIME, et de leur assigner un type de média. Elles contiennent une ligne par type de MIME; le premier élément de chaque ligne est le nom canonique du type de MIME (utilisé en interne), le dernier élément est du type [XXX] et il définit le type de média correspondant au type de MIME.

Pour assigner  au type de média OFFICE :

Quelques exemples :

image/png image/x-png	[BITMAP] image/svg image/svg+xml application/svg+xml application/svg	[DRAWING] audio/mp3 audio/mpeg3 audio/mpeg	[AUDIO]

Notez que pour les fichers OGG, le type de média est déterminé par programmation : AUDIO pour vorbis, VIDEO pour theora, et MULTIMEDIA dans les autres cas.

Le type de média est spécifique à MediaWiki, et il détermine le type de média contenu dans le fichier, par opposition au format dans lequel le fichier est présenté. Cette information est rangée dans la table en même temps que le type de MIME. Actuellement il n'est pas beaucoup utilisé mais il peut le devenir à l'avenir pour déterminer la manière de présenter un fichier à l'utilisateur. Les types suivants sont définis :

Fichiers interdits
En plus de l'option , les paramètres suivants peuvent faire rejeter les fichiers (même si   est activé) :


 * - liste d'extensions de fichiers.
 * - liste des types MIME interdits.

En plus, MediaWiki rejette tous les fichiers qui ressemblent à des scripts et qui pourraient être exécutés par erreur soit sur le serveur web ou le navigateur de l'utilisateur. Notamment, tout ce qui ressemble à l'un des formats suivants sera rejeté quelque soit le type de MIME détecté ou l'extension du fichier : HTML, JavaScript, PHP, ou scripts du shell. Notez que la détection de HTML et de JavaScript est plutôt grossière, et peut détecter des faux positifs &mdash; ceci est dû au fait que Microsoft Internet Explorer est connu pour interpréter les fichiers qui ressemblent à du HTML, quelque soit leur extension ou le type de MIME donné par le serveur web, ce qui pourrait conduire à avoir un site vulnérable aux attaques des scripts inter-sites (cross-site scripting). Si vous souhaitez même autoriser réellement de tels fichiers dangereux, vous pouvez modifier la fonction  du fichier UploadBase.php pour qu'elle retourne toujours.

Contrôle des virus
''En attente. Pour l'instant, voir et ''

Types de MIME dans les téléchargements
Notez que le type de MIME utilisé lorsque le fichier actuel est envoyé vers le navigateur de l'utilisateur n'est pas déterminé par la détection du MIME dans MediaWiki : les fichiers ne sont pas envoyés par MediaWiki mais directement à partir du serveur web. Ainsi, le serveur web doit être configuré pour utiliser le type de MIME correct pour chaque extension de fichier - par exemple si vous avez des difficultés pour visualiser les fichiers SVG dans votre navigateur, vérifiez que le serveur est configuré pour les délivrer avec le type. (Pour Apache, veuillez lire mod_mime).

Voir aussi


Anciennes discussions sur meta :


 * m:Talk:MediaWiki FAQ
 * Uploading files.