MediaWiki REL1_37
MimeMap.php
Go to the documentation of this file.
1<?php
22
29class MimeMap {
31 public const MIME_EXTENSIONS = [
32 'application/ogg' => [ 'ogx', 'ogg', 'ogm', 'ogv', 'oga', 'spx', 'opus' ],
33 'application/pdf' => [ 'pdf' ],
34 'application/vnd.ms-opentype' => [ 'otf' ],
35 'application/vnd.oasis.opendocument.chart' => [ 'odc' ],
36 'application/vnd.oasis.opendocument.chart-template' => [ 'otc' ],
37 'application/vnd.oasis.opendocument.database' => [ 'odb' ],
38 'application/vnd.oasis.opendocument.formula' => [ 'odf' ],
39 'application/vnd.oasis.opendocument.formula-template' => [ 'otf' ],
40 'application/vnd.oasis.opendocument.graphics' => [ 'odg' ],
41 'application/vnd.oasis.opendocument.graphics-template' => [ 'otg' ],
42 'application/vnd.oasis.opendocument.image' => [ 'odi' ],
43 'application/vnd.oasis.opendocument.image-template' => [ 'oti' ],
44 'application/vnd.oasis.opendocument.presentation' => [ 'odp' ],
45 'application/vnd.oasis.opendocument.presentation-template' => [ 'otp' ],
46 'application/vnd.oasis.opendocument.spreadsheet' => [ 'ods' ],
47 'application/vnd.oasis.opendocument.spreadsheet-template' => [ 'ots' ],
48 'application/vnd.oasis.opendocument.text' => [ 'odt' ],
49 'application/vnd.oasis.opendocument.text-master' => [ 'otm', 'odm' ],
50 'application/vnd.oasis.opendocument.text-template' => [ 'ott' ],
51 'application/vnd.oasis.opendocument.text-web' => [ 'oth' ],
52 'application/javascript' => [ 'js' ],
53 'application/x-shockwave-flash' => [ 'swf' ],
54 'audio/midi' => [ 'mid', 'midi', 'kar' ],
55 'audio/mpeg' => [ 'mpga', 'mpa', 'mp2', 'mp3' ],
56 'audio/x-aiff' => [ 'aif', 'aiff', 'aifc' ],
57 'audio/x-wav' => [ 'wav' ],
58 'audio/ogg' => [ 'oga', 'spx', 'ogg', 'opus' ],
59 'audio/opus' => [ 'opus', 'ogg', 'oga', 'spx' ],
60 'image/x-bmp' => [ 'bmp' ],
61 'image/gif' => [ 'gif' ],
62 'image/jpeg' => [ 'jpeg', 'jpg', 'jpe' ],
63 'image/png' => [ 'png', 'apng' ],
64 'image/svg+xml' => [ 'svg' ],
65 'image/svg' => [ 'svg' ],
66 'image/tiff' => [ 'tiff', 'tif' ],
67 'image/vnd.djvu' => [ 'djvu', 'djv' ],
68 'image/x.djvu' => [ 'djvu' ],
69 'image/x-djvu' => [ 'djvu' ],
70 'image/x-portable-pixmap' => [ 'ppm' ],
71 'image/x-xcf' => [ 'xcf' ],
72 'text/plain' => [ 'txt' ],
73 'text/html' => [ 'html', 'htm' ],
74 'video/ogg' => [ 'ogv', 'ogm', 'ogg' ],
75 'video/mpeg' => [ 'mpg', 'mpeg', 'mpe' ],
76 'application/acad' => [ 'dwg' ],
77 'application/andrew-inset' => [ 'ez' ],
78 'application/mac-binhex40' => [ 'hqx' ],
79 'application/mac-compactpro' => [ 'cpt' ],
80 'application/mathml+xml' => [ 'mathml' ],
81 'application/msword' => [ 'doc', 'dot' ],
82 'application/octet-stream' => [ 'bin', 'dms', 'lha', 'lzh', 'exe', 'class', 'so', 'dll' ],
83 'application/oda' => [ 'oda' ],
84 'application/postscript' => [ 'ai', 'eps', 'ps' ],
85 'application/rdf+xml' => [ 'rdf' ],
86 'application/smil' => [ 'smi', 'smil' ],
87 'application/srgs' => [ 'gram' ],
88 'application/srgs+xml' => [ 'grxml' ],
89 'application/vnd.mif' => [ 'mif' ],
90 'application/vnd.ms-excel' => [ 'xls', 'xlt', 'xla' ],
91 'application/vnd.ms-powerpoint' => [ 'ppt', 'pot', 'pps', 'ppa' ],
92 'application/vnd.wap.wbxml' => [ 'wbxml' ],
93 'application/vnd.wap.wmlc' => [ 'wmlc' ],
94 'application/vnd.wap.wmlscriptc' => [ 'wmlsc' ],
95 'application/voicexml+xml' => [ 'vxml' ],
96 'application/x-7z-compressed' => [ '7z' ],
97 'application/x-bcpio' => [ 'bcpio' ],
98 'application/x-bzip' => [ 'bz' ],
99 'application/x-bzip2' => [ 'bz2' ],
100 'application/x-cdlink' => [ 'vcd' ],
101 'application/x-chess-pgn' => [ 'pgn' ],
102 'application/x-cpio' => [ 'cpio' ],
103 'application/x-csh' => [ 'csh' ],
104 'application/x-dia-diagram' => [ 'dia' ],
105 'application/x-director' => [ 'dcr', 'dir', 'dxr' ],
106 'application/x-dvi' => [ 'dvi' ],
107 'application/x-futuresplash' => [ 'spl' ],
108 'application/x-gtar' => [ 'gtar', 'tar' ],
109 'application/x-gzip' => [ 'gz' ],
110 'application/x-hdf' => [ 'hdf' ],
111 'application/x-jar' => [ 'jar' ],
112 'application/json' => [ 'json' ],
113 'application/x-koan' => [ 'skp', 'skd', 'skt', 'skm' ],
114 'application/x-latex' => [ 'latex' ],
115 'application/x-netcdf' => [ 'nc', 'cdf' ],
116 'application/x-sh' => [ 'sh' ],
117 'application/x-shar' => [ 'shar' ],
118 'application/x-stuffit' => [ 'sit' ],
119 'application/x-sv4cpio' => [ 'sv4cpio' ],
120 'application/x-sv4crc' => [ 'sv4crc' ],
121 'application/x-tar' => [ 'tar' ],
122 'application/x-tcl' => [ 'tcl' ],
123 'application/x-tex' => [ 'tex' ],
124 'application/x-texinfo' => [ 'texinfo', 'texi' ],
125 'application/x-troff' => [ 't', 'tr', 'roff' ],
126 'application/x-troff-man' => [ 'man' ],
127 'application/x-troff-me' => [ 'me' ],
128 'application/x-troff-ms' => [ 'ms' ],
129 'application/x-ustar' => [ 'ustar' ],
130 'application/x-wais-source' => [ 'src' ],
131 'application/x-xpinstall' => [ 'xpi' ],
132 'application/xhtml+xml' => [ 'xhtml', 'xht' ],
133 'application/xslt+xml' => [ 'xslt' ],
134 'application/xml' => [ 'xml', 'xsl', 'xsd', 'kml' ],
135 'application/xml-dtd' => [ 'dtd' ],
136 'application/zip' =>
137 [ 'zip', 'jar', 'xpi', 'sxc', 'stc', 'sxd', 'std', 'sxi', 'sti', 'sxm', 'stm', 'sxw', 'stw' ],
138 'application/x-rar' => [ 'rar' ],
139 'application/font-sfnt' => [ 'ttf' ],
140 'application/font-woff' => [ 'woff' ],
141 'application/font-woff2' => [ 'woff2' ],
142 'application/vnd.ms-fontobject' => [ 'eot' ],
143 'application/x-font-ttf' => [ 'ttf' ],
144 'audio/basic' => [ 'au', 'snd' ],
145 'video/webm' => [ 'webm' ],
146 'audio/webm' => [ 'webm' ],
147 'audio/x-matroska' => [ 'mka', 'mkv' ],
148 'audio/x-mpegurl' => [ 'm3u' ],
149 'audio/x-ogg' => [ 'oga', 'ogg', 'spx', 'opus' ],
150 'audio/x-pn-realaudio' => [ 'ram', 'rm' ],
151 'audio/x-pn-realaudio-plugin' => [ 'rpm' ],
152 'audio/x-realaudio' => [ 'ra' ],
153 'audio/wav' => [ 'wav' ],
154 'audio/x-flac' => [ 'flac' ],
155 'audio/flac' => [ 'flac' ],
156 'chemical/x-pdb' => [ 'pdb' ],
157 'chemical/x-xyz' => [ 'xyz' ],
158 'image/bmp' => [ 'bmp' ],
159 'image/cgm' => [ 'cgm' ],
160 'image/ief' => [ 'ief' ],
161 'image/jp2' => [ 'jp2', 'j2k', 'jpg2' ],
162 'image/jpx' => [ 'jpf', 'jpx' ],
163 'image/vnd.microsoft.icon' => [ 'ico' ],
164 'image/vnd.wap.wbmp' => [ 'wbmp' ],
165 'image/webp' => [ 'webp' ],
166 'image/x-cmu-raster' => [ 'ras' ],
167 'image/x-icon' => [ 'ico' ],
168 'image/x-ms-bmp' => [ 'bmp' ],
169 'image/x-portable-anymap' => [ 'pnm' ],
170 'image/x-portable-bitmap' => [ 'pbm' ],
171 'image/x-portable-graymap' => [ 'pgm' ],
172 'image/x-rgb' => [ 'rgb' ],
173 'image/x-photoshop' => [ 'psd' ],
174 'image/x-xbitmap' => [ 'xbm' ],
175 'image/x-xpixmap' => [ 'xpm' ],
176 'image/x-xwindowdump' => [ 'xwd' ],
177 'model/iges' => [ 'igs', 'iges' ],
178 'model/mesh' => [ 'msh', 'mesh', 'silo' ],
179 'model/vrml' => [ 'wrl', 'vrml' ],
180 'text/calendar' => [ 'ics', 'ifb' ],
181 'text/css' => [ 'css' ],
182 'text/csv' => [ 'csv' ],
183 'text/richtext' => [ 'rtx' ],
184 'text/rtf' => [ 'rtf' ],
185 'text/sgml' => [ 'sgml', 'sgm' ],
186 'text/tab-separated-values' => [ 'tsv' ],
187 'text/vnd.wap.wml' => [ 'wml' ],
188 'text/vnd.wap.wmlscript' => [ 'wmls' ],
189 'text/xml' => [ 'xml', 'xsl', 'xslt', 'rss', 'rdf' ],
190 'text/x-component' => [ 'htc' ],
191 'text/x-setext' => [ 'etx' ],
192 'text/x-sawfish' => [ 'jl' ],
193 'video/mp4' => [ 'mp4', 'm4a', 'm4p', 'm4b', 'm4r', 'm4v' ],
194 'audio/mp4' => [ 'm4a' ],
195 'video/quicktime' => [ 'qt', 'mov' ],
196 'video/vnd.mpegurl' => [ 'mxu' ],
197 'video/x-flv' => [ 'flv' ],
198 'video/x-matroska' => [ 'mkv', 'mka' ],
199 'video/x-msvideo' => [ 'avi' ],
200 'video/x-ogg' => [ 'ogv', 'ogm', 'ogg' ],
201 'video/x-sgi-movie' => [ 'movie' ],
202 'x-conference/x-cooltalk' => [ 'ice' ],
203 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => [ 'docx' ],
204 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => [ 'dotx' ],
205 'application/vnd.ms-word.document.macroenabled.12' => [ 'docm' ],
206 'application/vnd.ms-word.template.macroenabled.12' => [ 'dotm' ],
207 'application/vnd.openxmlformats-officedocument.presentationml.template' => [ 'potx' ],
208 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => [ 'ppsx' ],
209 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => [ 'pptx' ],
210 'application/vnd.ms-powerpoint.addin.macroenabled.12' => [ 'ppam' ],
211 'application/vnd.ms-powerpoint.presentation.macroenabled.12' => [ 'pptm', 'potm' ],
212 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => [ 'ppsm' ],
213 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => [ 'xlsx' ],
214 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => [ 'xltx' ],
215 'application/vnd.ms-excel.sheet.macroenabled.12' => [ 'xlsm' ],
216 'application/vnd.ms-excel.template.macroenabled.12' => [ 'xltm' ],
217 'application/vnd.ms-excel.addin.macroenabled.12' => [ 'xlam' ],
218 'application/vnd.ms-excel.sheet.binary.macroenabled.12' => [ 'xlsb' ],
219 'model/vnd.dwfx+xps' => [ 'dwfx' ],
220 'application/vnd.ms-xpsdocument' => [ 'xps' ],
221 'application/x-opc+zip' => [
222 'docx', 'dotx', 'docm', 'dotm', 'potx', 'ppsx', 'pptx', 'ppam', 'pptm', 'potm', 'ppsm',
223 'xlsx', 'xltx', 'xlsm', 'xltm', 'xlam', 'xlsb', 'dwfx', 'xps' ],
224 'chemical/x-mdl-molfile' => [ 'mol' ],
225 'chemical/x-mdl-sdfile' => [ 'sdf' ],
226 'chemical/x-mdl-rxnfile' => [ 'rxn' ],
227 'chemical/x-mdl-rdfile' => [ 'rd' ],
228 'chemical/x-mdl-rgfile' => [ 'rg' ],
229 'application/x-amf' => [ 'amf' ],
230 'application/sla' => [ 'stl' ],
231 'application/wasm' => [ 'wasm' ],
232 ];
233
235 public const MEDIA_TYPES = [
237 'application/pdf',
238 'application/vnd.oasis.opendocument.chart',
239 'application/vnd.oasis.opendocument.chart-template',
240 'application/vnd.oasis.opendocument.database',
241 'application/vnd.oasis.opendocument.formula',
242 'application/vnd.oasis.opendocument.formula-template',
243 'application/vnd.oasis.opendocument.graphics',
244 'application/vnd.oasis.opendocument.graphics-template',
245 'application/vnd.oasis.opendocument.image',
246 'application/vnd.oasis.opendocument.image-template',
247 'application/vnd.oasis.opendocument.presentation',
248 'application/vnd.oasis.opendocument.presentation-template',
249 'application/vnd.oasis.opendocument.spreadsheet',
250 'application/vnd.oasis.opendocument.spreadsheet-template',
251 'application/vnd.oasis.opendocument.text',
252 'application/vnd.oasis.opendocument.text-template',
253 'application/vnd.oasis.opendocument.text-master',
254 'application/vnd.oasis.opendocument.text-web',
255 'application/pdf',
256 'application/acrobat',
257 'application/msword',
258 'application/vnd.ms-excel',
259 'application/vnd.ms-powerpoint',
260 'application/x-director',
261 'image/vnd.djvu',
262 'image/x.djvu',
263 'image/x-djvu',
264 'text/rtf',
265 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
266 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
267 'application/vnd.ms-word.document.macroenabled.12',
268 'application/vnd.ms-word.template.macroenabled.12',
269 'application/vnd.openxmlformats-officedocument.presentationml.template',
270 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
271 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
272 'application/vnd.ms-powerpoint.addin.macroenabled.12',
273 'application/vnd.ms-powerpoint.presentation.macroenabled.12',
274 'application/vnd.ms-powerpoint.presentation.macroenabled.12',
275 'application/vnd.ms-powerpoint.slideshow.macroenabled.12',
276 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
277 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
278 'application/vnd.ms-excel.sheet.macroenabled.12',
279 'application/vnd.ms-excel.template.macroenabled.12',
280 'application/vnd.ms-excel.addin.macroenabled.12',
281 'application/vnd.ms-excel.sheet.binary.macroenabled.12',
282 ],
284 'application/javascript',
285 'text/javascript',
286 'application/x-javascript',
287 'application/javascript',
288 'text/javascript',
289 'application/x-javascript',
290 'application/x-ecmascript',
291 'text/ecmascript',
292 'application/x-bash',
293 'application/x-sh',
294 'application/x-csh',
295 'application/x-tcsh',
296 'application/x-tcl',
297 'application/x-perl',
298 'application/x-python',
299 'application/wasm',
300 ],
302 'application/x-shockwave-flash',
303 'application/ogg',
304 'audio/ogg',
305 'video/ogg',
306 'application/ogg',
307 'application/x-ogg',
308 'audio/ogg',
309 'audio/x-ogg',
310 'video/ogg',
311 'video/x-ogg',
312 'application/x-shockwave-flash',
313 'audio/x-pn-realaudio-plugin',
314 'model/iges',
315 'model/mesh',
316 'model/vrml',
317 'video/quicktime',
318 'video/x-msvideo',
319 ],
320 MEDIATYPE_AUDIO => [
321 'audio/midi',
322 'audio/x-aiff',
323 'audio/x-wav',
324 'audio/mp3',
325 'audio/mpeg',
326 'audio/mpeg',
327 'audio/mp3',
328 'audio/mpeg3',
329 'audio/mp4',
330 'audio/wav',
331 'audio/x-wav',
332 'audio/wave',
333 'audio/midi',
334 'audio/mid',
335 'audio/basic',
336 'audio/ogg',
337 'audio/opus',
338 'audio/x-aiff',
339 'audio/x-pn-realaudio',
340 'audio/x-realaudio',
341 'audio/webm',
342 'audio/x-matroska',
343 'audio/x-flac',
344 'audio/flac',
345 ],
347 'image/x-bmp',
348 'image/x-ms-bmp',
349 'image/bmp',
350 'image/gif',
351 'image/jpeg',
352 'image/png',
353 'image/tiff',
354 'image/vnd.djvu',
355 'image/x-xcf',
356 'image/x-portable-pixmap',
357 'image/gif',
358 'image/png',
359 'image/x-png',
360 'image/ief',
361 'image/jpeg',
362 'image/pjpeg',
363 'image/jp2',
364 'image/jpx',
365 'image/xbm',
366 'image/tiff',
367 'image/x-icon',
368 'image/x-ico',
369 'image/vnd.microsoft.icon',
370 'image/x-rgb',
371 'image/x-portable-pixmap',
372 'image/x-portable-graymap',
373 'image/x-portable-greymap',
374 'image/x-bmp',
375 'image/x-ms-bmp',
376 'image/bmp',
377 'application/x-bmp',
378 'application/bmp',
379 'image/x-photoshop',
380 'image/psd',
381 'image/x-psd',
382 'image/photoshop',
383 'image/vnd.adobe.photoshop',
384 'image/webp',
385 ],
387 'image/svg+xml',
388 'image/svg+xml',
389 'application/svg+xml',
390 'application/svg',
391 'image/svg',
392 'application/postscript',
393 'application/x-latex',
394 'application/x-tex',
395 'application/x-dia-diagram',
396 'application/acad',
397 'application/x-acad',
398 'application/autocad_dwg',
399 'image/x-dwg',
400 'application/dwg',
401 'application/x-dwg',
402 'application/x-autocad',
403 'image/vnd.dwg',
404 'drawing/dwg',
405 'chemical/x-mdl-molfile',
406 'chemical/x-mdl-sdfile',
407 'chemical/x-mdl-rxnfile',
408 'chemical/x-mdl-rdfile',
409 'chemical/x-mdl-rgfile',
410 ],
411 MEDIATYPE_TEXT => [
412 'text/plain',
413 'text/html',
414 'text/plain',
415 'text/html',
416 'application/xhtml+xml',
417 'application/xml',
418 'text/xml',
419 'text',
420 'application/json',
421 'text/csv',
422 'text/tab-separated-values',
423 ],
424 MEDIATYPE_VIDEO => [
425 'video/ogg',
426 'video/mpeg',
427 'video/mpeg',
428 'application/mpeg',
429 'video/ogg',
430 'video/x-sgi-video',
431 'video/x-flv',
432 'video/webm',
433 'video/x-matroska',
434 'video/mp4',
435 ],
437 'unknown/unknown',
438 'application/octet-stream',
439 'application/x-empty',
440 ],
442 'application/zip',
443 'application/x-zip',
444 'application/x-gzip',
445 'application/x-bzip',
446 'application/x-bzip2',
447 'application/x-tar',
448 'application/x-stuffit',
449 'application/x-opc+zip',
450 'application/x-7z-compressed',
451 ],
452 MEDIATYPE_3D => [
453 'application/sla',
454 ],
455 ];
456
458 public const MIME_TYPE_ALIASES = [
459 'text/javascript' => 'application/javascript',
460 'application/x-javascript' => 'application/javascript',
461 'audio/mpeg' => 'audio/mp3',
462 'audio/ogg' => 'application/ogg',
463 'video/ogg' => 'application/ogg',
464 'image/x-ms-bmp' => 'image/x-bmp',
465 'image/bmp' => 'image/x-bmp',
466 'application/octet-stream' => 'unknown/unknown',
467 'application/x-empty' => 'unknown/unknown',
468 'image/x-png' => 'image/png',
469 'image/pjpeg' => 'image/jpeg',
470 'image/x-ico' => 'image/x-icon',
471 'image/vnd.microsoft.icon' => 'image/x-icon',
472 'image/x-portable-greymap' => 'image/x-portable-graymap',
473 'application/x-bmp' => 'image/x-bmp',
474 'application/bmp' => 'image/x-bmp',
475 'image/psd' => 'image/x-photoshop',
476 'image/x-psd' => 'image/x-photoshop',
477 'image/photoshop' => 'image/x-photoshop',
478 'image/vnd.adobe.photoshop' => 'image/x-photoshop',
479 'application/svg+xml' => 'image/svg+xml',
480 'application/svg' => 'image/svg+xml',
481 'image/svg' => 'image/svg+xml',
482 'audio/mp3' => 'audio/mpeg',
483 'audio/mpeg3' => 'audio/mpeg',
484 'audio/x-wav' => 'audio/wav',
485 'audio/wave' => 'audio/wav',
486 'audio/mid' => 'audio/midi',
487 'application/mpeg' => 'video/mpeg',
488 'application/x-ogg' => 'application/ogg',
489 'audio/x-ogg' => 'application/ogg',
490 'video/x-ogg' => 'application/ogg',
491 'application/xhtml+xml' => 'text/html',
492 'text/xml' => 'application/xml',
493 'application/x-zip' => 'application/zip',
494 'application/x-ecmascript' => 'application/javascript',
495 'text/ecmascript' => 'application/javascript',
496 'application/acrobat' => 'application/pdf',
497 'image/x.djvu' => 'image/vnd.djvu',
498 'image/x-djvu' => 'image/vnd.djvu',
499 'application/x-acad' => 'application/acad',
500 'application/autocad_dwg' => 'application/acad',
501 'image/x-dwg' => 'application/acad',
502 'application/dwg' => 'application/acad',
503 'application/x-dwg' => 'application/acad',
504 'application/x-autocad' => 'application/acad',
505 'image/vnd.dwg' => 'application/acad',
506 'drawing/dwg' => 'application/acad',
507 'image/jpeg2000' => 'image/jp2',
508 'image/jpeg2000-image' => 'image/jp2',
509 'image/x-jpeg2000-image' => 'image/jp2',
510 ];
511}
MimeMap defines the mapping of MIME types to file extensions and media types.
Definition MimeMap.php:29
const MEDIATYPE_DRAWING
Definition defines.php:30
const MEDIATYPE_VIDEO
Definition defines.php:35
const MEDIATYPE_OFFICE
Definition defines.php:39
const MEDIATYPE_UNKNOWN
Definition defines.php:26
const MEDIATYPE_AUDIO
Definition defines.php:32
const MEDIATYPE_TEXT
Definition defines.php:41
const MEDIATYPE_BITMAP
Definition defines.php:28
const MEDIATYPE_MULTIMEDIA
Definition defines.php:37
const MEDIATYPE_EXECUTABLE
Definition defines.php:43
const MEDIATYPE_3D
Definition defines.php:47
const MEDIATYPE_ARCHIVE
Definition defines.php:45