mimetypes.list.php 8.28 KB
Newer Older
1
2
<?php
/**
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
* ownCloud
*
* @author Robin Appelman
* @copyright 2011 Robin Appelman icewind1991@gmail.com
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this library.  If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
 * Array mapping file extensions to mimetypes (in alphabetical order).
25
 *
26
27
28
 * The first index in the mime type array is the assumed correct mimetype
 * and the second is either a secure alternative or null if the correct
 * is considered secure.
29
30
 */
return array(
tiezdne's avatar
tiezdne committed
31
	'3gp' => array('video/3gpp', null),
32
33
34
	'7z' => array('application/x-7z-compressed', null),
	'accdb' => array('application/msaccess', null),
	'ai' => array('application/illustrator', null),
Normal Ra's avatar
Normal Ra committed
35
	'apk' => array('application/vnd.android.package-archive', null),
Olivier Paroz's avatar
Olivier Paroz committed
36
	'arw' => array('image/x-dcraw', null),
37
38
39
40
41
42
43
44
45
46
47
48
49
50
	'avi' => array('video/x-msvideo', null),
	'bash' => array('text/x-shellscript', null),
	'blend' => array('application/x-blender', null),
	'bin' => array('application/x-bin', null),
	'bmp' => array('image/bmp', null),
	'cb7' => array('application/x-cbr', null),
	'cba' => array('application/x-cbr', null),
	'cbr' => array('application/x-cbr', null),
	'cbt' => array('application/x-cbr', null),
	'cbtc' => array('application/x-cbr', null),
	'cbz' => array('application/x-cbr', null),
	'cc' => array('text/x-c', null),
	'cdr' => array('application/coreldraw', null),
	'cpp' => array('text/x-c++src', null),
Olivier Paroz's avatar
Olivier Paroz committed
51
	'cr2' => array('image/x-dcraw', null),
52
53
54
55
56
	'css' => array('text/css', null),
	'csv' => array('text/csv', null),
	'cvbdl' => array('application/x-cbr', null),
	'c' => array('text/x-c', null),
	'c++' => array('text/x-c++src', null),
Olivier Paroz's avatar
Olivier Paroz committed
57
	'dcr' => array('image/x-dcraw', null),
58
	'deb' => array('application/x-deb', null),
Olivier Paroz's avatar
Olivier Paroz committed
59
	'dng' => array('image/x-dcraw', null),
60
	'doc' => array('application/msword', null),
61
	'docm' => array('application/vnd.ms-word.document.macroEnabled.12', null),
62
63
64
65
66
67
	'docx' => array('application/vnd.openxmlformats-officedocument.wordprocessingml.document', null),
	'dot' => array('application/msword', null),
	'dotx' => array('application/vnd.openxmlformats-officedocument.wordprocessingml.template', null),
	'dv' => array('video/dv', null),
	'eot' => array('application/vnd.ms-fontobject', null),
	'epub' => array('application/epub+zip', null),
68
	'eps' => array('application/postscript', null),
Olivier Paroz's avatar
Olivier Paroz committed
69
	'erf' => array('image/x-dcraw', null),
70
71
	'exe' => array('application/x-ms-dos-executable', null),
	'flac' => array('audio/flac', null),
Victor Dubiniuk's avatar
Victor Dubiniuk committed
72
	'flv' => array('video/x-flv', null),
73
74
75
76
77
78
79
	'gif' => array('image/gif', null),
	'gz' => array('application/x-gzip', null),
	'gzip' => array('application/x-gzip', null),
	'html' => array('text/html', 'text/plain'),
	'htm' => array('text/html', 'text/plain'),
	'ical' => array('text/calendar', null),
	'ics' => array('text/calendar', null),
Olivier Paroz's avatar
Olivier Paroz committed
80
	'iiq' => array('image/x-dcraw', null),
81
82
83
	'impress' => array('text/impress', null),
	'jpeg' => array('image/jpeg', null),
	'jpg' => array('image/jpeg', null),
84
	'jps' => array('image/jpeg', null),
85
86
	'js' => array('application/javascript', 'text/plain'),
	'json' => array('application/json', 'text/plain'),
Olivier Paroz's avatar
Olivier Paroz committed
87
88
	'k25' => array('image/x-dcraw', null),
	'kdc' => array('image/x-dcraw', null),
89
	'key' => array('application/x-iwork-keynote-sffkey', null),
90
91
92
93
94
95
96
97
98
	'keynote' => array('application/x-iwork-keynote-sffkey', null),
	'kra' => array('application/x-krita', null),
	'm2t' => array('video/mp2t', null),
	'm4v' => array('video/mp4', null),
	'markdown' => array('text/markdown', null),
	'mdown' => array('text/markdown', null),
	'md' => array('text/markdown', null),
	'mdb' => array('application/msaccess', null),
	'mdwn' => array('text/markdown', null),
Olivier Paroz's avatar
Olivier Paroz committed
99
	'mef' => array('image/x-dcraw', null),
100
101
102
103
104
105
106
	'mkv' => array('video/x-matroska', null),
	'mobi' => array('application/x-mobipocket-ebook', null),
	'mov' => array('video/quicktime', null),
	'mp3' => array('audio/mpeg', null),
	'mp4' => array('video/mp4', null),
	'mpeg' => array('video/mpeg', null),
	'mpg' => array('video/mpeg', null),
107
	'mpo' => array('image/jpeg', null),
108
	'msi' => array('application/x-msi', null),
Olivier Paroz's avatar
Olivier Paroz committed
109
	'nef' => array('image/x-dcraw', null),
110
	'numbers' => array('application/x-iwork-numbers-sffnumbers', null),
111
	'odf' => array('application/vnd.oasis.opendocument.formula', null),
112
113
114
115
116
117
118
	'odg' => array('application/vnd.oasis.opendocument.graphics', null),
	'odp' => array('application/vnd.oasis.opendocument.presentation', null),
	'ods' => array('application/vnd.oasis.opendocument.spreadsheet', null),
	'odt' => array('application/vnd.oasis.opendocument.text', null),
	'oga' => array('audio/ogg', null),
	'ogg' => array('audio/ogg', null),
	'ogv' => array('video/ogg', null),
Olivier Paroz's avatar
Olivier Paroz committed
119
	'orf' => array('image/x-dcraw', null),
120
	'otf' => array('application/font-sfnt', null),
121
122
	'pages' => array('application/x-iwork-pages-sffpages', null),
	'pdf' => array('application/pdf', null),
123
	'pfb' => array('application/x-font', null),
Olivier Paroz's avatar
Olivier Paroz committed
124
	'pef' => array('image/x-dcraw', null),
125
126
127
	'php' => array('application/x-php', null),
	'pl' => array('application/x-perl', null),
	'png' => array('image/png', null),
128
129
130
131
132
133
134
135
136
137
	'pot' => array('application/vnd.ms-powerpoint', null),
	'potm' => array('application/vnd.ms-powerpoint.template.macroEnabled.12', null),
	'potx' => array('application/vnd.openxmlformats-officedocument.presentationml.template', null),
	'ppa' => array('application/vnd.ms-powerpoint', null),
	'ppam' => array('application/vnd.ms-powerpoint.addin.macroEnabled.12', null),
	'pps' => array('application/vnd.ms-powerpoint', null),
	'ppsm' => array('application/vnd.ms-powerpoint.slideshow.macroEnabled.12', null),
	'ppsx' => array('application/vnd.openxmlformats-officedocument.presentationml.slideshow', null),
	'ppt' => array('application/vnd.ms-powerpoint', null),
	'pptm' => array('application/vnd.ms-powerpoint.presentation.macroEnabled.12', null),
138
	'pptx' => array('application/vnd.openxmlformats-officedocument.presentationml.presentation', null),
139
	'ps' => array('application/postscript', null),
140
141
	'psd' => array('application/x-photoshop', null),
	'py' => array('text/x-python', null),
Olivier Paroz's avatar
Olivier Paroz committed
142
	'raf' => array('image/x-dcraw', null),
143
144
	'rar' => array('application/x-rar-compressed', null),
	'reveal' => array('text/reveal', null),
Olivier Paroz's avatar
Olivier Paroz committed
145
	'rw2' => array('image/x-dcraw', null),
146
147
148
	'sgf' => array('application/sgf', null),
	'sh-lib' => array('text/x-shellscript', null),
	'sh' => array('text/x-shellscript', null),
Olivier Paroz's avatar
Olivier Paroz committed
149
150
	'srf' => array('image/x-dcraw', null),
	'sr2' => array('image/x-dcraw', null),
151
152
153
154
155
156
157
158
	'svg' => array('image/svg+xml', 'text/plain'),
	'swf' => array('application/x-shockwave-flash', 'application/octet-stream'),
	'tar' => array('application/x-tar', null),
	'tar.gz' => array('application/x-compressed', null),
	'tex' => array('application/x-tex', null),
	'tgz' => array('application/x-compressed', null),
	'tiff' => array('image/tiff', null),
	'tif' => array('image/tiff', null),
159
	'ttf' => array('application/font-sfnt', null),
160
161
162
	'txt' => array('text/plain', null),
	'vcard' => array('text/vcard', null),
	'vcf' => array('text/vcard', null),
tiezdne's avatar
tiezdne committed
163
	'vob' => array('video/dvd', null),
164
165
166
167
168
	'wav' => array('audio/wav', null),
	'webm' => array('video/webm', null),
	'woff' => array('application/font-woff', null),
	'wmv' => array('video/x-ms-asf', null),
	'xcf' => array('application/x-gimp', null),
169
170
171
172
173
	'xla' => array('application/vnd.ms-excel', null),
	'xlam' => array('application/vnd.ms-excel.addin.macroEnabled.12', null),
	'xls' => array('application/vnd.ms-excel', null),
	'xlsb' => array('application/vnd.ms-excel.sheet.binary.macroEnabled.12', null),
	'xlsm' => array('application/vnd.ms-excel.sheet.macroEnabled.12', null),
174
	'xlsx' => array('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', null),
175
176
177
	'xlt' => array('application/vnd.ms-excel', null),
	'xltm' => array('application/vnd.ms-excel.template.macroEnabled.12', null),
	'xltx' => array('application/vnd.openxmlformats-officedocument.spreadsheetml.template', null),
178
	'xml' => array('application/xml', 'text/plain'),
Olivier Paroz's avatar
Olivier Paroz committed
179
	'xrf' => array('image/x-dcraw', null),
180
	'zip' => array('application/zip', null),
181
);