4 ".7z" => "application/x-7z-compressed",
5 ".bz2" => "application/x-bzip2",
6 ".cpio" => "application/x-cpio",
7 ".deb" => "application/vnd.debian.binary-package",
8 ".gz" => "application/gzip",
9 ".jar" => "application/x-java-archive",
10 ".lz" => "application/lzip",
11 ".par2" => "application/x-par2",
12 ".rar" => "application/vnd.rar",
13 ".rpm" => "application/x-rpm",
14 ".tbz" => "application/x-bzip2",
15 ".tgz" => "application/gzip",
16 ".txz" => "application/x-xz",
17 ".tzst" => "application/zstd",
18 ".warc" => "application/warc",
19 ".xz" => "application/x-xz",
20 ".zip" => "application/zip",
21 ".zst" => "application/zstd",
25 ".asc" => "text/plain",
27 ".cue" => "text/plain",
28 ".icf" => "text/calendar; charset=utf-8",
29 ".info" => "text/info; charset=utf-8",
30 ".json" => "application/json; charset=utf-8",
31 ".ldif" => "text/plain; charset=utf-8",
32 ".log" => "text/plain; charset=utf-8",
33 ".md" => "text/markdown; charset=utf-8",
34 ".rec" => "text/plain; charset=utf-8",
35 ".sql" => "text/plain; charset=utf-8",
36 ".txt" => "text/plain; charset=utf-8",
37 ".url" => "text/uri-list; charset=utf-8",
38 ".vcf" => "text/vcard; charset=utf-8",
39 ".zone" => "text/dns; charset=utf-8",
40 "ls-lR" => "text/plain; charset=utf-8",
41 "README" => "text/plain; charset=utf-8",
45 ".atom" => "application/atom+xml",
46 ".dbk" => "application/docbook+xml",
47 ".opml" => "application/xml",
48 ".rss" => "application/rss+xml",
49 ".xbel" => "application/xml",
50 ".xml" => "application/xml",
54 ".css" => "text/css; charset=utf-8",
55 ".dtd" => "application/xml-dtd",
56 ".htm" => "text/html",
57 ".html" => "text/html",
58 ".js" => "application/javascript; charset=utf-8",
59 ".wasm" => "application/wasm",
60 ".xhtml" => "application/xhtml+xml",
66 ".woff" => "font/woff",
67 ".woff2" => "font/woff2",
71 ".cbr" => "application/vnd.comicbook+rar",
72 ".cbz" => "application/vnd.comicbook+zip",
73 ".chm" => "application/vnd.ms-htmlhelp",
74 ".djvu" => "image/vnd.djvu",
75 ".dvi" => "application/x-dvi",
76 ".eps" => "application/postscript",
77 ".epub" => "application/epub+zip",
78 ".fb2" => "application/x-fictionbook+xml",
79 ".pdf" => "application/pdf",
80 ".ps" => "application/postscript",
84 ".odb" => "application/vnd.oasis.opendocument.database",
85 ".odc" => "application/vnd.oasis.opendocument.chart",
86 ".odf" => "application/vnd.oasis.opendocument.formula",
87 ".odg" => "application/vnd.oasis.opendocument.graphics",
88 ".odi" => "application/vnd.oasis.opendocument.image",
89 ".odm" => "application/vnd.oasis.opendocument.text-master",
90 ".odp" => "application/vnd.oasis.opendocument.presentation",
91 ".ods" => "application/vnd.oasis.opendocument.spreadsheet",
92 ".odt" => "application/vnd.oasis.opendocument.text",
93 ".otc" => "application/vnd.oasis.opendocument.chart-template",
94 ".otg" => "application/vnd.oasis.opendocument.graphics-template",
95 ".oth" => "application/vnd.oasis.opendocument.text-web",
96 ".oti" => "application/vnd.oasis.opendocument.image-template",
97 ".otp" => "application/vnd.oasis.opendocument.presentation-template",
98 ".ots" => "application/vnd.oasis.opendocument.spreadsheet-template",
99 ".ott" => "application/vnd.oasis.opendocument.text-template",
103 ".doc" => "application/msword",
104 ".docx" => "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
105 ".dotx" => "application/vnd.openxmlformats-officedocument.wordprocessingml.template",
106 ".potx" => "application/vnd.openxmlformats-officedocument.presentationml.template",
107 ".ppsx" => "application/vnd.openxmlformats-officedocument.presentationml.slideshow",
108 ".ppt" => "application/vnd.ms-powerpoint",
109 ".pptx" => "application/vnd.openxmlformats-officedocument.presentationml.presentation",
110 ".rtf" => "application/rtf",
111 ".sldx" => "application/vnd.openxmlformats-officedocument.presentationml.slide",
112 ".xls" => "application/vnd.ms-excel",
113 ".xlsx" => "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
114 ".xltx" => "application/vnd.openxmlformats-officedocument.spreadsheetml.template",
116 # Interactive fiction
118 ".blb" => "application/x-blorb",
119 ".blorb" => "application/x-blorb",
120 ".gblorb" => "application/x-blorb",
121 ".glb" => "application/x-blorb",
122 ".ifm" => "text/plain",
123 ".ulx" => "application/x-glulx",
124 ".z1" => "application/x-zmachine",
125 ".z2" => "application/x-zmachine",
126 ".z3" => "application/x-zmachine",
127 ".z4" => "application/x-zmachine",
128 ".z5" => "application/x-zmachine",
129 ".z6" => "application/x-zmachine",
130 ".z7" => "application/x-zmachine",
131 ".z8" => "application/x-zmachine",
132 ".zblorb" => "application/x-blorb",
133 ".zlb" => "application/x-blorb",
137 ".cer" => "application/pkix-cert",
138 ".crl" => "application/pkix-crl",
139 ".gpg" => "application/pgp-encrypted",
140 ".p10" => "application/pkcs10",
141 ".p12" => "application/pkcs12",
142 ".p7c" => "application/pkcs7-mime",
143 ".p7m" => "application/pkcs7-mime",
144 ".p7s" => "application/pkcs7-signature",
145 ".p8" => "application/pkcs8",
146 ".p8e" => "application/pkcs8-encrypted",
147 ".pem" => "application/pem-certificate-chain",
148 ".pfx" => "application/pkcs12",
149 ".sig" => "application/pgp-signature",
153 ".apng" => "image/vnd.mozilla.apng",
154 ".avif" => "image/avif",
155 ".gif" => "image/gif",
156 ".heic" => "image/heic",
157 ".jp2" => "image/jp2",
158 ".jpeg" => "image/jpeg",
159 ".jpg" => "image/jpeg",
160 ".jxl" => "image/jxl",
161 ".mng" => "video/x-mng",
162 ".pbm" => "image/x-portable-bitmap",
163 ".pgm" => "image/x-portable-graymap",
164 ".png" => "image/png",
165 ".pnm" => "image/x-portable-anymap",
166 ".ppm" => "image/x-portable-pixmap",
167 ".svg" => "image/svg+xml",
168 ".tif" => "image/tiff",
169 ".tiff" => "image/tiff",
170 ".webp" => "image/webp",
174 ".aac" => "audio/aac",
175 ".ac3" => "audio/ac3",
176 ".aif" => "audio/aiff",
177 ".aiff" => "audio/aiff",
178 ".flac" => "audio/flac",
179 ".m4a" => "audio/mp4",
180 ".mka" => "audio/x-matroska",
181 ".mp2" => "audio/mpeg",
182 ".mp3" => "audio/mpeg",
183 ".oga" => "audio/ogg",
184 ".ogg" => "audio/ogg",
185 ".opus" => "audio/ogg",
186 ".spx" => "audio/ogg",
187 ".wav" => "audio/wav",
188 ".weba" => "audio/webm",
189 ".wv" => "audio/x-wavpack",
193 ".avi" => "video/x-msvideo",
194 ".m4v" => "video/mp4",
195 ".mj2" => "video/mj2",
196 ".mkv" => "video/x-matroska",
197 ".mov" => "video/quicktime",
198 ".mp4" => "video/mp4",
199 ".mpg" => "video/mpeg",
200 ".ogv" => "video/ogg",
201 ".ts" => "video/MP2T",
202 ".webm" => "video/webm",
206 ".m3u" => "application/vnd.apple.mpegurl",
207 ".m3u8" => "application/vnd.apple.mpegurl",
208 ".xspf" => "application/xspf+xml",
212 ".ass" => "text/x-ssa",
213 ".srt" => "application/x-subrip",
214 ".ssa" => "text/x-ssa",
218 ".eml" => "message/rfc822",
219 ".mbox" => "application/mbox",
220 ".mht" => "message/rfc822",
224 ".iso" => "application/x-iso9660-image",
225 ".meta4" => "application/metalink4+xml",
226 ".metalink" => "application/metalink+xml",
227 ".torrent" => "application/x-bittorrent",
229 "" => "application/octet-stream"