Skip to content

Instantly share code, notes, and snippets.

@iwannabebot
Last active December 24, 2018 05:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save iwannabebot/dcb537835e0db9061cca3fe5366a9ac3 to your computer and use it in GitHub Desktop.
Save iwannabebot/dcb537835e0db9061cca3fe5366a9ac3 to your computer and use it in GitHub Desktop.
A C# utility class that gives your the Mime type from the file extension.
using System;
using System.Collections.Generic;
using System.Web;
namespace Iwannabebot.Utility.Web
{
public class MimeService
{
public static string Get(string extension)
{
if (!extension.StartsWith("."))
{
extension = "." + extension;
}
try
{
return Mimes[extension];
}
catch
{
try
{
return GetMimeType(extension);
}
catch
{
return "application/octet-stream";
}
}
}
private static string GetMimeType(string ext)
{
var mime = "application/octet-stream";
Microsoft.Win32.RegistryKey regKey = Microsoft.Win32.Registry.ClassesRoot.OpenSubKey(ext);
if (regKey != null)
{
object val = regKey.GetValue("Content Type");
if (val != null)
{
string strval = val.ToString();
if (!(string.IsNullOrEmpty(strval) || string.IsNullOrWhiteSpace(strval)))
{
return mime;
}
}
}
return MimeMapping.GetMimeMapping($"t{ext}");
}
#region list of mime types
// A list with seed from:
// http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
// http://www.iana.org/assignments/media-types/media-types.xhtml
static readonly IDictionary<string, string> Mimes = new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase)
{
{ ".123", "application/vnd.lotus-1-2-3"},
{ ".323", "text/h323"},
{ ".3dml", "text/vnd.in3d.3dml"},
{ ".3ds", "image/x-3ds"},
{ ".3g2", "video/3gpp2"},
{ ".3gp", "video/3gpp"},
{ ".3gp2", "video/3gpp2"},
{ ".3gpp", "video/3gpp"},
{ ".7z", "application/x-7z-compressed"},
{ ".aa", "audio/audible"},
{ ".aab", "application/x-authorware-bin"},
{ ".aac", "audio/aac"},
{ ".aaf", "application/octet-stream"},
{ ".aam", "application/x-authorware-map"},
{ ".aas", "application/x-authorware-seg"},
{ ".aax", "audio/vnd.audible.aax"},
{ ".abw", "application/x-abiword"},
{ ".ac", "application/pkix-attr-cert"},
{ ".ac3", "audio/ac3"},
{ ".aca", "application/octet-stream"},
{ ".acc", "application/vnd.americandynamics.acc"},
{ ".accda", "application/msaccess.addin"},
{ ".accdb", "application/msaccess"},
{ ".accdc", "application/msaccess.cab"},
{ ".accde", "application/msaccess"},
{ ".accdr", "application/msaccess.runtime"},
{ ".accdt", "application/msaccess"},
{ ".accdw", "application/msaccess.webapplication"},
{ ".accft", "application/msaccess.ftemplate"},
{ ".ace", "application/x-ace-compressed"},
{ ".acu", "application/vnd.acucobol"},
{ ".acutc", "application/vnd.acucorp"},
{ ".acx", "application/internet-property-stream"},
{ ".addin", "text/xml"},
{ ".ade", "application/msaccess"},
{ ".adobebridge", "application/x-bridge-url"},
{ ".adp", "application/msaccess"},
{ ".adt", "audio/vnd.dlna.adts"},
{ ".adts", "audio/aac"},
{ ".aep", "application/vnd.audiograph"},
{ ".afm", "application/octet-stream"},
{ ".afp", "application/vnd.ibm.modcap"},
{ ".ahead", "application/vnd.ahead.space"},
{ ".ai", "application/postscript"},
{ ".aif", "audio/x-aiff"},
{ ".aifc", "audio/aiff"},
{ ".aiff", "audio/aiff"},
{ ".air", "application/vnd.adobe.air-application-installer-package+zip"},
{ ".ait", "application/vnd.dvb.ait"},
{ ".amc", "application/x-mpeg"},
{ ".ami", "application/vnd.amiga.ami"},
{ ".apk", "application/vnd.android.package-archive"},
{ ".appcache", "text/cache-manifest"},
{ ".application", "application/x-ms-application"},
{ ".apr", "application/vnd.lotus-approach"},
{ ".arc", "application/x-freearc"},
{ ".art", "image/x-jg"},
{ ".asa", "application/xml"},
{ ".asax", "application/xml"},
{ ".asc", "application/pgp-signature"},
{ ".ascx", "application/xml"},
{ ".asd", "application/octet-stream"},
{ ".asf", "video/x-ms-asf"},
{ ".ashx", "application/xml"},
{ ".asi", "application/octet-stream"},
{ ".asm", "text/plain"},
{ ".asmx", "application/xml"},
{ ".aso", "application/vnd.accpac.simply.aso"},
{ ".aspx", "application/xml"},
{ ".asr", "video/x-ms-asf"},
{ ".asx", "video/x-ms-asf"},
{ ".atc", "application/vnd.acucorp"},
{ ".atom", "application/atom+xml"},
{ ".atomcat", "application/atomcat+xml"},
{ ".atomsvc", "application/atomsvc+xml"},
{ ".atx", "application/vnd.antix.game-component"},
{ ".au", "audio/basic"},
{ ".avi", "video/x-msvideo"},
{ ".aw", "application/applixware"},
{ ".axs", "application/olescript"},
{ ".azf", "application/vnd.airzip.filesecure.azf"},
{ ".azs", "application/vnd.airzip.filesecure.azs"},
{ ".azw", "application/vnd.amazon.ebook"},
{ ".bas", "text/plain"},
{ ".bat", "application/x-msdownload"},
{ ".bcpio", "application/x-bcpio"},
{ ".bdf", "application/x-font-bdf"},
{ ".bdm", "application/vnd.syncml.dm+wbxml"},
{ ".bed", "application/vnd.realvnc.bed"},
{ ".bh2", "application/vnd.fujitsu.oasysprs"},
{ ".bin", "application/octet-stream"},
{ ".blb", "application/x-blorb"},
{ ".blorb", "application/x-blorb"},
{ ".bmi", "application/vnd.bmi"},
{ ".bmp", "image/bmp"},
{ ".book", "application/vnd.framemaker"},
{ ".box", "application/vnd.previewsystems.box"},
{ ".boz", "application/x-bzip2"},
{ ".bpk", "application/octet-stream"},
{ ".btif", "image/prs.btif"},
{ ".bz", "application/x-bzip"},
{ ".bz2", "application/x-bzip2"},
{ ".c", "text/plain"},
{ ".c11amc", "application/vnd.cluetrust.cartomobile-config"},
{ ".c11amz", "application/vnd.cluetrust.cartomobile-config-pkg"},
{ ".c4d", "application/vnd.clonk.c4group"},
{ ".c4f", "application/vnd.clonk.c4group"},
{ ".c4g", "application/vnd.clonk.c4group"},
{ ".c4p", "application/vnd.clonk.c4group"},
{ ".c4u", "application/vnd.clonk.c4group"},
{ ".cab", "application/octet-stream"},
{ ".caf", "audio/x-caf"},
{ ".calx", "application/vnd.ms-office.calx"},
{ ".cap", "application/vnd.tcpdump.pcap"},
{ ".car", "application/vnd.curl.car"},
{ ".cat", "application/vnd.ms-pki.seccat"},
{ ".cb7", "application/x-cbr"},
{ ".cba", "application/x-cbr"},
{ ".cbr", "application/x-cbr"},
{ ".cbt", "application/x-cbr"},
{ ".cbz", "application/x-cbr"},
{ ".cc", "text/plain"},
{ ".cct", "application/x-director"},
{ ".ccxml", "application/ccxml+xml"},
{ ".cd", "text/plain"},
{ ".cdbcmsg", "application/vnd.contact.cmsg"},
{ ".cdda", "audio/aiff"},
{ ".cdf", "application/x-cdf"},
{ ".cdkey", "application/vnd.mediastation.cdkey"},
{ ".cdmia", "application/cdmi-capability"},
{ ".cdmic", "application/cdmi-container"},
{ ".cdmid", "application/cdmi-domain"},
{ ".cdmio", "application/cdmi-object"},
{ ".cdmiq", "application/cdmi-queue"},
{ ".cdx", "chemical/x-cdx"},
{ ".cdxml", "application/vnd.chemdraw+xml"},
{ ".cdy", "application/vnd.cinderella"},
{ ".cer", "application/x-x509-ca-cert"},
{ ".cfs", "application/x-cfs-compressed"},
{ ".cgm", "image/cgm"},
{ ".chat", "application/x-chat"},
{ ".chm", "application/octet-stream"},
{ ".chrt", "application/vnd.kde.kchart"},
{ ".cif", "chemical/x-cif"},
{ ".cii", "application/vnd.anser-web-certificate-issue-initiation"},
{ ".cil", "application/vnd.ms-artgalry"},
{ ".cla", "application/vnd.claymore"},
{ ".class", "application/x-java-applet"},
{ ".clkk", "application/vnd.crick.clicker.keyboard"},
{ ".clkp", "application/vnd.crick.clicker.palette"},
{ ".clkt", "application/vnd.crick.clicker.template"},
{ ".clkw", "application/vnd.crick.clicker.wordbank"},
{ ".clkx", "application/vnd.crick.clicker"},
{ ".clp", "application/x-msclip"},
{ ".cmc", "application/vnd.cosmocaller"},
{ ".cmdf", "chemical/x-cmdf"},
{ ".cml", "chemical/x-cml"},
{ ".cmp", "application/vnd.yellowriver-custom-menu"},
{ ".cmx", "image/x-cmx"},
{ ".cnf", "text/plain"},
{ ".cod", "image/cis-cod"},
{ ".com", "application/x-msdownload"},
{ ".conf", "text/plain"},
{ ".config", "application/xml"},
{ ".contact", "text/x-ms-contact"},
{ ".coverage", "application/xml"},
{ ".cpio", "application/x-cpio"},
{ ".cpp", "text/plain"},
{ ".cpt", "application/mac-compactpro"},
{ ".crd", "application/x-mscardfile"},
{ ".crl", "application/pkix-crl"},
{ ".crt", "application/x-x509-ca-cert"},
{ ".cryptonote", "application/vnd.rig.cryptonote"},
{ ".cs", "text/plain"},
{ ".csdproj", "text/plain"},
{ ".csh", "application/x-csh"},
{ ".csml", "chemical/x-csml"},
{ ".csp", "application/vnd.commonspace"},
{ ".csproj", "text/plain"},
{ ".css", "text/css"},
{ ".cst", "application/x-director"},
{ ".csv", "text/csv"},
{ ".cu", "application/cu-seeme"},
{ ".cur", "application/octet-stream"},
{ ".curl", "text/vnd.curl"},
{ ".cww", "application/prs.cww"},
{ ".cxt", "application/x-director"},
{ ".cxx", "text/plain"},
{ ".dae", "model/vnd.collada+xml"},
{ ".daf", "application/vnd.mobius.daf"},
{ ".dart", "application/vnd.dart"},
{ ".dat", "application/octet-stream"},
{ ".dataless", "application/vnd.fdsn.seed"},
{ ".datasource", "application/xml"},
{ ".davmount", "application/davmount+xml"},
{ ".dbk", "application/docbook+xml"},
{ ".dbproj", "text/plain"},
{ ".dcr", "application/x-director"},
{ ".dcurl", "text/vnd.curl.dcurl"},
{ ".dd2", "application/vnd.oma.dd2+xml"},
{ ".ddd", "application/vnd.fujixerox.ddd"},
{ ".deb", "application/x-debian-package"},
{ ".def", "text/plain"},
{ ".deploy", "application/octet-stream"},
{ ".der", "application/x-x509-ca-cert"},
{ ".dfac", "application/vnd.dreamfactory"},
{ ".dgc", "application/x-dgc-compressed"},
{ ".dgml", "application/xml"},
{ ".dib", "image/bmp"},
{ ".dic", "text/x-c"},
{ ".dif", "video/x-dv"},
{ ".dir", "application/x-director"},
{ ".dis", "application/vnd.mobius.dis"},
{ ".disco", "text/xml"},
{ ".dist", "application/octet-stream"},
{ ".distz", "application/octet-stream"},
{ ".djv", "image/vnd.djvu"},
{ ".djvu", "image/vnd.djvu"},
{ ".dll", "application/x-msdownload"},
{ ".dll.config", "text/xml"},
{ ".dlm", "text/dlm"},
{ ".dmg", "application/x-apple-diskimage"},
{ ".dmp", "application/vnd.tcpdump.pcap"},
{ ".dms", "application/octet-stream"},
{ ".dna", "application/vnd.dna"},
{ ".doc", "application/msword"},
{ ".docm", "application/vnd.ms-word.document.macroEnabled.12"},
{ ".docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"},
{ ".dot", "application/msword"},
{ ".dotm", "application/vnd.ms-word.template.macroEnabled.12"},
{ ".dotx", "application/vnd.openxmlformats-officedocument.wordprocessingml.template"},
{ ".dp", "application/vnd.osgi.dp"},
{ ".dpg", "application/vnd.dpgraph"},
{ ".dra", "audio/vnd.dra"},
{ ".dsc", "text/prs.lines.tag"},
{ ".dsp", "application/octet-stream"},
{ ".dssc", "application/dssc+der"},
{ ".dsw", "text/plain"},
{ ".dtb", "application/x-dtbook+xml"},
{ ".dtd", "text/xml"},
{ ".dts", "audio/vnd.dts"},
{ ".dtsconfig", "text/xml"},
{ ".dtshd", "audio/vnd.dts.hd"},
{ ".dump", "application/octet-stream"},
{ ".dv", "video/x-dv"},
{ ".dvb", "video/vnd.dvb.file"},
{ ".dvi", "application/x-dvi"},
{ ".dwf", "drawing/x-dwf"},
{ ".dwg", "image/vnd.dwg"},
{ ".dwp", "application/octet-stream"},
{ ".dxf", "image/vnd.dxf"},
{ ".dxp", "application/vnd.spotfire.dxp"},
{ ".dxr", "application/x-director"},
{ ".ecelp4800", "audio/vnd.nuera.ecelp4800"},
{ ".ecelp7470", "audio/vnd.nuera.ecelp7470"},
{ ".ecelp9600", "audio/vnd.nuera.ecelp9600"},
{ ".ecma", "application/ecmascript"},
{ ".edm", "application/vnd.novadigm.edm"},
{ ".edx", "application/vnd.novadigm.edx"},
{ ".efif", "application/vnd.picsel"},
{ ".ei6", "application/vnd.pg.osasli"},
{ ".elc", "application/octet-stream"},
{ ".emf", "application/x-msmetafile"},
{ ".eml", "message/rfc822"},
{ ".emma", "application/emma+xml"},
{ ".emz", "application/octet-stream"},
{ ".eol", "audio/vnd.digital-winds"},
{ ".eot", "application/octet-stream"},
{ ".eps", "application/postscript"},
{ ".epub", "application/epub+zip"},
{ ".es3", "application/vnd.eszigno3+xml"},
{ ".esa", "application/vnd.osgi.subsystem"},
{ ".esf", "application/vnd.epson.esf"},
{ ".et3", "application/vnd.eszigno3+xml"},
{ ".etl", "application/etl"},
{ ".etx", "text/x-setext"},
{ ".eva", "application/x-eva"},
{ ".evy", "application/envoy"},
{ ".exe", "application/octet-stream"},
{ ".exe.config", "text/xml"},
{ ".exi", "application/exi"},
{ ".ext", "application/vnd.novadigm.ext"},
{ ".ez", "application/andrew-inset"},
{ ".ez2", "application/vnd.ezpix-album"},
{ ".ez3", "application/vnd.ezpix-package"},
{ ".f", "text/x-fortran"},
{ ".f4v", "video/x-f4v"},
{ ".f77", "text/x-fortran"},
{ ".f90", "text/x-fortran"},
{ ".fbs", "image/vnd.fastbidsheet"},
{ ".fcdt", "application/vnd.adobe.formscentral.fcdt"},
{ ".fcs", "application/vnd.isac.fcs"},
{ ".fdf", "application/vnd.fdf"},
{ ".fe_launch", "application/vnd.denovo.fcselayout-link"},
{ ".fg5", "application/vnd.fujitsu.oasysgp"},
{ ".fgd", "application/x-director"},
{ ".fh", "image/x-freehand"},
{ ".fh4", "image/x-freehand"},
{ ".fh5", "image/x-freehand"},
{ ".fh7", "image/x-freehand"},
{ ".fhc", "image/x-freehand"},
{ ".fif", "application/fractals"},
{ ".fig", "application/x-xfig"},
{ ".filters", "Application/xml"},
{ ".fla", "application/octet-stream"},
{ ".flac", "audio/x-flac"},
{ ".fli", "video/x-fli"},
{ ".flo", "application/vnd.micrografx.flo"},
{ ".flr", "x-world/x-vrml"},
{ ".flv", "video/x-flv"},
{ ".flw", "application/vnd.kde.kivio"},
{ ".flx", "text/vnd.fmi.flexstor"},
{ ".fly", "text/vnd.fly"},
{ ".fm", "application/vnd.framemaker"},
{ ".fnc", "application/vnd.frogans.fnc"},
{ ".for", "text/x-fortran"},
{ ".fpx", "image/vnd.fpx"},
{ ".frame", "application/vnd.framemaker"},
{ ".fsc", "application/vnd.fsc.weblaunch"},
{ ".fsscript", "application/fsharp-script"},
{ ".fst", "image/vnd.fst"},
{ ".fsx", "application/fsharp-script"},
{ ".ftc", "application/vnd.fluxtime.clip"},
{ ".fti", "application/vnd.anser-web-funds-transfer-initiation"},
{ ".fvt", "video/vnd.fvt"},
{ ".fxp", "application/vnd.adobe.fxp"},
{ ".fxpl", "application/vnd.adobe.fxp"},
{ ".fzs", "application/vnd.fuzzysheet"},
{ ".g2w", "application/vnd.geoplan"},
{ ".g3", "image/g3fax"},
{ ".g3w", "application/vnd.geospace"},
{ ".gac", "application/vnd.groove-account"},
{ ".gam", "application/x-tads"},
{ ".gbr", "application/rpki-ghostbusters"},
{ ".gca", "application/x-gca-compressed"},
{ ".gdl", "model/vnd.gdl"},
{ ".generictest", "application/xml"},
{ ".geo", "application/vnd.dynageo"},
{ ".gex", "application/vnd.geometry-explorer"},
{ ".ggb", "application/vnd.geogebra.file"},
{ ".ggt", "application/vnd.geogebra.tool"},
{ ".ghf", "application/vnd.groove-help"},
{ ".gif", "image/gif"},
{ ".gim", "application/vnd.groove-identity-message"},
{ ".gml", "application/gml+xml"},
{ ".gmx", "application/vnd.gmx"},
{ ".gnumeric", "application/x-gnumeric"},
{ ".gph", "application/vnd.flographit"},
{ ".gpx", "application/gpx+xml"},
{ ".gqf", "application/vnd.grafeq"},
{ ".gqs", "application/vnd.grafeq"},
{ ".gram", "application/srgs"},
{ ".gramps", "application/x-gramps-xml"},
{ ".gre", "application/vnd.geometry-explorer"},
{ ".group", "text/x-ms-group"},
{ ".grv", "application/vnd.groove-injector"},
{ ".grxml", "application/srgs+xml"},
{ ".gsf", "application/x-font-ghostscript"},
{ ".gsm", "audio/x-gsm"},
{ ".gtar", "application/x-gtar"},
{ ".gtm", "application/vnd.groove-tool-message"},
{ ".gtw", "model/vnd.gtw"},
{ ".gv", "text/vnd.graphviz"},
{ ".gxf", "application/gxf"},
{ ".gxt", "application/vnd.geonext"},
{ ".gz", "application/x-gzip"},
{ ".h", "text/plain"},
{ ".h261", "video/h261"},
{ ".h263", "video/h263"},
{ ".h264", "video/h264"},
{ ".hal", "application/vnd.hal+xml"},
{ ".hbci", "application/vnd.hbci"},
{ ".hdf", "application/x-hdf"},
{ ".hdml", "text/x-hdml"},
{ ".hh", "text/x-c"},
{ ".hhc", "application/x-oleobject"},
{ ".hhk", "application/octet-stream"},
{ ".hhp", "application/octet-stream"},
{ ".hlp", "application/winhlp"},
{ ".hpgl", "application/vnd.hp-hpgl"},
{ ".hpid", "application/vnd.hp-hpid"},
{ ".hpp", "text/plain"},
{ ".hps", "application/vnd.hp-hps"},
{ ".hqx", "application/mac-binhex40"},
{ ".hta", "application/hta"},
{ ".htc", "text/x-component"},
{ ".htke", "application/vnd.kenameaapp"},
{ ".htm", "text/html"},
{ ".html", "text/html"},
{ ".htt", "text/webviewhtml"},
{ ".hvd", "application/vnd.yamaha.hv-dic"},
{ ".hvp", "application/vnd.yamaha.hv-voice"},
{ ".hvs", "application/vnd.yamaha.hv-script"},
{ ".hxa", "application/xml"},
{ ".hxc", "application/xml"},
{ ".hxd", "application/octet-stream"},
{ ".hxe", "application/xml"},
{ ".hxf", "application/xml"},
{ ".hxh", "application/octet-stream"},
{ ".hxi", "application/octet-stream"},
{ ".hxk", "application/xml"},
{ ".hxq", "application/octet-stream"},
{ ".hxr", "application/octet-stream"},
{ ".hxs", "application/octet-stream"},
{ ".hxt", "text/html"},
{ ".hxv", "application/xml"},
{ ".hxw", "application/octet-stream"},
{ ".hxx", "text/plain"},
{ ".i", "text/plain"},
{ ".i2g", "application/vnd.intergeo"},
{ ".icc", "application/vnd.iccprofile"},
{ ".ice", "x-conference/x-cooltalk"},
{ ".icm", "application/vnd.iccprofile"},
{ ".ico", "image/x-icon"},
{ ".ics", "application/octet-stream"},
{ ".idl", "text/plain"},
{ ".ief", "image/ief"},
{ ".ifb", "text/calendar"},
{ ".ifm", "application/vnd.shana.informed.formdata"},
{ ".iges", "model/iges"},
{ ".igl", "application/vnd.igloader"},
{ ".igm", "application/vnd.insors.igm"},
{ ".igs", "model/iges"},
{ ".igx", "application/vnd.micrografx.igx"},
{ ".iif", "application/vnd.shana.informed.interchange"},
{ ".iii", "application/x-iphone"},
{ ".imp", "application/vnd.accpac.simply.imp"},
{ ".ims", "application/vnd.ms-ims"},
{ ".in", "text/plain"},
{ ".inc", "text/plain"},
{ ".inf", "application/octet-stream"},
{ ".ink", "application/inkml+xml"},
{ ".inkml", "application/inkml+xml"},
{ ".inl", "text/plain"},
{ ".ins", "application/x-internet-signup"},
{ ".install", "application/x-install-instructions"},
{ ".iota", "application/vnd.astraea-software.iota"},
{ ".ipa", "application/x-itunes-ipa"},
{ ".ipfix", "application/ipfix"},
{ ".ipg", "application/x-itunes-ipg"},
{ ".ipk", "application/vnd.shana.informed.package"},
{ ".ipproj", "text/plain"},
{ ".ipsw", "application/x-itunes-ipsw"},
{ ".iqy", "text/x-ms-iqy"},
{ ".irm", "application/vnd.ibm.rights-management"},
{ ".irp", "application/vnd.irepository.package+xml"},
{ ".iso", "application/x-iso9660-image"},
{ ".isp", "application/x-internet-signup"},
{ ".ite", "application/x-itunes-ite"},
{ ".itlp", "application/x-itunes-itlp"},
{ ".itms", "application/x-itunes-itms"},
{ ".itp", "application/vnd.shana.informed.formtemplate"},
{ ".itpc", "application/x-itunes-itpc"},
{ ".ivf", "video/x-ivf"},
{ ".ivp", "application/vnd.immervision-ivp"},
{ ".ivu", "application/vnd.immervision-ivu"},
{ ".jad", "text/vnd.sun.j2me.app-descriptor"},
{ ".jam", "application/vnd.jam"},
{ ".jar", "application/java-archive"},
{ ".java", "application/octet-stream"},
{ ".jck", "application/liquidmotion"},
{ ".jcz", "application/liquidmotion"},
{ ".jfif", "image/pjpeg"},
{ ".jisp", "application/vnd.jisp"},
{ ".jlt", "application/vnd.hp-jlyt"},
{ ".jnlp", "application/x-java-jnlp-file"},
{ ".joda", "application/vnd.joost.joda-archive"},
{ ".jpb", "application/octet-stream"},
{ ".jpe", "image/jpeg"},
{ ".jpeg", "image/jpeg"},
{ ".jpg", "image/jpeg"},
{ ".jpgm", "video/jpm"},
{ ".jpgv", "video/jpeg"},
{ ".jpm", "video/jpm"},
{ ".js", "application/javascript"},
{ ".json", "application/json"},
{ ".jsonml", "application/jsonml+json"},
{ ".jsx", "text/jscript"},
{ ".jsxbin", "text/plain"},
{ ".kar", "audio/midi"},
{ ".karbon", "application/vnd.kde.karbon"},
{ ".kfo", "application/vnd.kde.kformula"},
{ ".kia", "application/vnd.kidspiration"},
{ ".kml", "application/vnd.google-earth.kml+xml"},
{ ".kmz", "application/vnd.google-earth.kmz"},
{ ".kne", "application/vnd.kinar"},
{ ".knp", "application/vnd.kinar"},
{ ".kon", "application/vnd.kde.kontour"},
{ ".kpr", "application/vnd.kde.kpresenter"},
{ ".kpt", "application/vnd.kde.kpresenter"},
{ ".kpxx", "application/vnd.ds-keypoint"},
{ ".ksp", "application/vnd.kde.kspread"},
{ ".ktr", "application/vnd.kahootz"},
{ ".ktx", "image/ktx"},
{ ".ktz", "application/vnd.kahootz"},
{ ".kwd", "application/vnd.kde.kword"},
{ ".kwt", "application/vnd.kde.kword"},
{ ".lasxml", "application/vnd.las.las+xml"},
{ ".latex", "application/x-latex"},
{ ".lbd", "application/vnd.llamagraphics.life-balance.desktop"},
{ ".lbe", "application/vnd.llamagraphics.life-balance.exchange+xml"},
{ ".les", "application/vnd.hhe.lesson-player"},
{ ".lha", "application/x-lzh-compressed"},
{ ".library-ms", "application/windows-library+xml"},
{ ".link66", "application/vnd.route66.link66+xml"},
{ ".list", "text/plain"},
{ ".list3820", "application/vnd.ibm.modcap"},
{ ".listafp", "application/vnd.ibm.modcap"},
{ ".lit", "application/x-ms-reader"},
{ ".lnk", "application/x-ms-shortcut"},
{ ".loadtest", "application/xml"},
{ ".log", "text/plain"},
{ ".lostxml", "application/lost+xml"},
{ ".lpk", "application/octet-stream"},
{ ".lrf", "application/octet-stream"},
{ ".lrm", "application/vnd.ms-lrm"},
{ ".lsf", "video/x-la-asf"},
{ ".lst", "text/plain"},
{ ".lsx", "video/x-la-asf"},
{ ".ltf", "application/vnd.frogans.ltf"},
{ ".lvp", "audio/vnd.lucent.voice"},
{ ".lwp", "application/vnd.lotus-wordpro"},
{ ".lzh", "application/octet-stream"},
{ ".m13", "application/x-msmediaview"},
{ ".m14", "application/x-msmediaview"},
{ ".m1v", "video/mpeg"},
{ ".m21", "application/mp21"},
{ ".m2a", "audio/mpeg"},
{ ".m2t", "video/vnd.dlna.mpeg-tts"},
{ ".m2ts", "video/vnd.dlna.mpeg-tts"},
{ ".m2v", "video/mpeg"},
{ ".m3a", "audio/mpeg"},
{ ".m3u", "audio/x-mpegurl"},
{ ".m3u8", "audio/x-mpegurl"},
{ ".m4a", "audio/m4a"},
{ ".m4b", "audio/m4b"},
{ ".m4p", "audio/m4p"},
{ ".m4r", "audio/x-m4r"},
{ ".m4u", "video/vnd.mpegurl"},
{ ".m4v", "video/x-m4v"},
{ ".ma", "application/mathematica"},
{ ".mac", "image/x-macpaint"},
{ ".mads", "application/mads+xml"},
{ ".mag", "application/vnd.ecowin.chart"},
{ ".mak", "text/plain"},
{ ".maker", "application/vnd.framemaker"},
{ ".man", "application/x-troff-man"},
{ ".manifest", "application/x-ms-manifest"},
{ ".map", "text/plain"},
{ ".mar", "application/octet-stream"},
{ ".master", "application/xml"},
{ ".mathml", "application/mathml+xml"},
{ ".mb", "application/mathematica"},
{ ".mbk", "application/vnd.mobius.mbk"},
{ ".mbox", "application/mbox"},
{ ".mc1", "application/vnd.medcalcdata"},
{ ".mcd", "application/vnd.mcd"},
{ ".mcurl", "text/vnd.curl.mcurl"},
{ ".mda", "application/msaccess"},
{ ".mdb", "application/x-msaccess"},
{ ".mde", "application/msaccess"},
{ ".mdi", "image/vnd.ms-modi"},
{ ".mdp", "application/octet-stream"},
{ ".me", "application/x-troff-me"},
{ ".mesh", "model/mesh"},
{ ".meta4", "application/metalink4+xml"},
{ ".metalink", "application/metalink+xml"},
{ ".mets", "application/mets+xml"},
{ ".mfm", "application/vnd.mfmp"},
{ ".mfp", "application/x-shockwave-flash"},
{ ".mft", "application/rpki-manifest"},
{ ".mgp", "application/vnd.osgeo.mapguide.package"},
{ ".mgz", "application/vnd.proteus.magazine"},
{ ".mht", "message/rfc822"},
{ ".mhtml", "message/rfc822"},
{ ".mid", "audio/mid"},
{ ".midi", "audio/mid"},
{ ".mie", "application/x-mie"},
{ ".mif", "application/vnd.mif"},
{ ".mime", "message/rfc822"},
{ ".mix", "application/octet-stream"},
{ ".mj2", "video/mj2"},
{ ".mjp2", "video/mj2"},
{ ".mk", "text/plain"},
{ ".mk3d", "video/x-matroska"},
{ ".mka", "audio/x-matroska"},
{ ".mks", "video/x-matroska"},
{ ".mkv", "video/x-matroska"},
{ ".mlp", "application/vnd.dolby.mlp"},
{ ".mmd", "application/vnd.chipnuts.karaoke-mmd"},
{ ".mmf", "application/x-smaf"},
{ ".mmr", "image/vnd.fujixerox.edmics-mmr"},
{ ".mng", "video/x-mng"},
{ ".mno", "text/xml"},
{ ".mny", "application/x-msmoney"},
{ ".mobi", "application/x-mobipocket-ebook"},
{ ".mod", "video/mpeg"},
{ ".mods", "application/mods+xml"},
{ ".mov", "video/quicktime"},
{ ".movie", "video/x-sgi-movie"},
{ ".mp2", "video/mpeg"},
{ ".mp21", "application/mp21"},
{ ".mp2a", "audio/mpeg"},
{ ".mp2v", "video/mpeg"},
{ ".mp3", "audio/mpeg"},
{ ".mp4", "video/mp4"},
{ ".mp4a", "audio/mp4"},
{ ".mp4s", "application/mp4"},
{ ".mp4v", "video/mp4"},
{ ".mpa", "video/mpeg"},
{ ".mpc", "application/vnd.mophun.certificate"},
{ ".mpe", "video/mpeg"},
{ ".mpeg", "video/mpeg"},
{ ".mpf", "application/vnd.ms-mediapackage"},
{ ".mpg", "video/mpeg"},
{ ".mpg4", "video/mp4"},
{ ".mpga", "audio/mpeg"},
{ ".mpkg", "application/vnd.apple.installer+xml"},
{ ".mpm", "application/vnd.blueice.multipass"},
{ ".mpn", "application/vnd.mophun.application"},
{ ".mpp", "application/vnd.ms-project"},
{ ".mpt", "application/vnd.ms-project"},
{ ".mpv2", "video/mpeg"},
{ ".mpy", "application/vnd.ibm.minipay"},
{ ".mqv", "video/quicktime"},
{ ".mqy", "application/vnd.mobius.mqy"},
{ ".mrc", "application/marc"},
{ ".mrcx", "application/marcxml+xml"},
{ ".ms", "application/x-troff-ms"},
{ ".mscml", "application/mediaservercontrol+xml"},
{ ".mseed", "application/vnd.fdsn.mseed"},
{ ".mseq", "application/vnd.mseq"},
{ ".msf", "application/vnd.epson.msf"},
{ ".msh", "model/mesh"},
{ ".msi", "application/octet-stream"},
{ ".msl", "application/vnd.mobius.msl"},
{ ".mso", "application/octet-stream"},
{ ".msty", "application/vnd.muvee.style"},
{ ".mts", "video/vnd.dlna.mpeg-tts"},
{ ".mtx", "application/xml"},
{ ".mus", "application/vnd.musician"},
{ ".musicxml", "application/vnd.recordare.musicxml+xml"},
{ ".mvb", "application/x-msmediaview"},
{ ".mvc", "application/x-miva-compiled"},
{ ".mwf", "application/vnd.mfer"},
{ ".mxf", "application/mxf"},
{ ".mxl", "application/vnd.recordare.musicxml"},
{ ".mxml", "application/xv+xml"},
{ ".mxp", "application/x-mmxp"},
{ ".mxs", "application/vnd.triscape.mxs"},
{ ".mxu", "video/vnd.mpegurl"},
{ ".n3", "text/n3"},
{ ".nb", "application/mathematica"},
{ ".nbp", "application/vnd.wolfram.player"},
{ ".nc", "application/x-netcdf"},
{ ".ncx", "application/x-dtbncx+xml"},
{ ".nfo", "text/x-nfo"},
{ ".n-gage", "application/vnd.nokia.n-gage.symbian.install"},
{ ".ngdat", "application/vnd.nokia.n-gage.data"},
{ ".nitf", "application/vnd.nitf"},
{ ".nlu", "application/vnd.neurolanguage.nlu"},
{ ".nml", "application/vnd.enliven"},
{ ".nnd", "application/vnd.noblenet-directory"},
{ ".nns", "application/vnd.noblenet-sealer"},
{ ".nnw", "application/vnd.noblenet-web"},
{ ".npx", "image/vnd.net-fpx"},
{ ".nsc", "video/x-ms-asf"},
{ ".nsf", "application/vnd.lotus-notes"},
{ ".ntf", "application/vnd.nitf"},
{ ".nws", "message/rfc822"},
{ ".nzb", "application/x-nzb"},
{ ".oa2", "application/vnd.fujitsu.oasys2"},
{ ".oa3", "application/vnd.fujitsu.oasys3"},
{ ".oas", "application/vnd.fujitsu.oasys"},
{ ".obd", "application/x-msbinder"},
{ ".obj", "application/x-tgif"},
{ ".ocx", "application/octet-stream"},
{ ".oda", "application/oda"},
{ ".odb", "application/vnd.oasis.opendocument.database"},
{ ".odc", "text/x-ms-odc"},
{ ".odf", "application/vnd.oasis.opendocument.formula"},
{ ".odft", "application/vnd.oasis.opendocument.formula-template"},
{ ".odg", "application/vnd.oasis.opendocument.graphics"},
{ ".odh", "text/plain"},
{ ".odi", "application/vnd.oasis.opendocument.image"},
{ ".odl", "text/plain"},
{ ".odm", "application/vnd.oasis.opendocument.text-master"},
{ ".odp", "application/vnd.oasis.opendocument.presentation"},
{ ".ods", "application/oleobject"},
{ ".odt", "application/vnd.oasis.opendocument.text"},
{ ".oga", "audio/ogg"},
{ ".ogg", "audio/ogg"},
{ ".ogv", "video/ogg"},
{ ".ogx", "application/ogg"},
{ ".omdoc", "application/omdoc+xml"},
{ ".one", "application/onenote"},
{ ".onea", "application/onenote"},
{ ".onepkg", "application/onenote"},
{ ".onetmp", "application/onenote"},
{ ".onetoc", "application/onenote"},
{ ".onetoc2", "application/onenote"},
{ ".opf", "application/oebps-package+xml"},
{ ".opml", "text/x-opml"},
{ ".oprc", "application/vnd.palm"},
{ ".orderedtest", "application/xml"},
{ ".org", "application/vnd.lotus-organizer"},
{ ".osdx", "application/opensearchdescription+xml"},
{ ".osf", "application/vnd.yamaha.openscoreformat"},
{ ".osfpvg", "application/vnd.yamaha.openscoreformat.osfpvg+xml"},
{ ".otc", "application/vnd.oasis.opendocument.chart-template"},
{ ".otf", "font/otf"},
{ ".otg", "application/vnd.oasis.opendocument.graphics-template"},
{ ".oth", "application/vnd.oasis.opendocument.text-web"},
{ ".oti", "application/vnd.oasis.opendocument.image-template"},
{ ".otp", "application/vnd.oasis.opendocument.presentation-template"},
{ ".ots", "application/vnd.oasis.opendocument.spreadsheet-template"},
{ ".ott", "application/vnd.oasis.opendocument.text-template"},
{ ".oxps", "application/oxps"},
{ ".oxt", "application/vnd.openofficeorg.extension"},
{ ".p", "text/x-pascal"},
{ ".p10", "application/pkcs10"},
{ ".p12", "application/x-pkcs12"},
{ ".p7b", "application/x-pkcs7-certificates"},
{ ".p7c", "application/pkcs7-mime"},
{ ".p7m", "application/pkcs7-mime"},
{ ".p7r", "application/x-pkcs7-certreqresp"},
{ ".p7s", "application/pkcs7-signature"},
{ ".p8", "application/pkcs8"},
{ ".pas", "text/x-pascal"},
{ ".paw", "application/vnd.pawaafile"},
{ ".pbd", "application/vnd.powerbuilder6"},
{ ".pbm", "image/x-portable-bitmap"},
{ ".pcap", "application/vnd.tcpdump.pcap"},
{ ".pcast", "application/x-podcast"},
{ ".pcf", "application/x-font-pcf"},
{ ".pcl", "application/vnd.hp-pcl"},
{ ".pclxl", "application/vnd.hp-pclxl"},
{ ".pct", "image/pict"},
{ ".pcurl", "application/vnd.curl.pcurl"},
{ ".pcx", "application/octet-stream"},
{ ".pcz", "application/octet-stream"},
{ ".pdb", "application/vnd.palm"},
{ ".pdf", "application/pdf"},
{ ".pfa", "application/x-font-type1"},
{ ".pfb", "application/octet-stream"},
{ ".pfm", "application/octet-stream"},
{ ".pfr", "application/font-tdpfr"},
{ ".pfx", "application/x-pkcs12"},
{ ".pgm", "image/x-portable-graymap"},
{ ".pgn", "application/x-chess-pgn"},
{ ".pgp", "application/pgp-encrypted"},
{ ".pic", "image/pict"},
{ ".pict", "image/pict"},
{ ".pkg", "application/octet-stream"},
{ ".pkgdef", "text/plain"},
{ ".pkgundef", "text/plain"},
{ ".pki", "application/pkixcmp"},
{ ".pkipath", "application/pkix-pkipath"},
{ ".pko", "application/vnd.ms-pki.pko"},
{ ".plb", "application/vnd.3gpp.pic-bw-large"},
{ ".plc", "application/vnd.mobius.plc"},
{ ".plf", "application/vnd.pocketlearn"},
{ ".pls", "audio/scpls"},
{ ".pma", "application/x-perfmon"},
{ ".pmc", "application/x-perfmon"},
{ ".pml", "application/x-perfmon"},
{ ".pmr", "application/x-perfmon"},
{ ".pmw", "application/x-perfmon"},
{ ".png", "image/png"},
{ ".pnm", "image/x-portable-anymap"},
{ ".pnt", "image/x-macpaint"},
{ ".pntg", "image/x-macpaint"},
{ ".pnz", "image/png"},
{ ".portpkg", "application/vnd.macports.portpkg"},
{ ".pot", "application/vnd.ms-powerpoint"},
{ ".potm", "application/vnd.ms-powerpoint.template.macroEnabled.12"},
{ ".potx", "application/vnd.openxmlformats-officedocument.presentationml.template"},
{ ".ppa", "application/vnd.ms-powerpoint"},
{ ".ppam", "application/vnd.ms-powerpoint.addin.macroEnabled.12"},
{ ".ppd", "application/vnd.cups-ppd"},
{ ".ppm", "image/x-portable-pixmap"},
{ ".pps", "application/vnd.ms-powerpoint"},
{ ".ppsm", "application/vnd.ms-powerpoint.slideshow.macroEnabled.12"},
{ ".ppsx", "application/vnd.openxmlformats-officedocument.presentationml.slideshow"},
{ ".ppt", "application/vnd.ms-powerpoint"},
{ ".pptm", "application/vnd.ms-powerpoint.presentation.macroEnabled.12"},
{ ".pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation"},
{ ".pqa", "application/vnd.palm"},
{ ".prc", "application/x-mobipocket-ebook"},
{ ".pre", "application/vnd.lotus-freelance"},
{ ".prf", "application/pics-rules"},
{ ".prm", "application/octet-stream"},
{ ".prx", "application/octet-stream"},
{ ".ps", "application/postscript"},
{ ".psb", "application/vnd.3gpp.pic-bw-small"},
{ ".psc1", "application/PowerShell"},
{ ".psd", "application/octet-stream"},
{ ".psess", "application/xml"},
{ ".psf", "application/x-font-linux-psf"},
{ ".pskcxml", "application/pskc+xml"},
{ ".psm", "application/octet-stream"},
{ ".psp", "application/octet-stream"},
{ ".ptid", "application/vnd.pvi.ptid1"},
{ ".pub", "application/x-mspublisher"},
{ ".pvb", "application/vnd.3gpp.pic-bw-var"},
{ ".pwn", "application/vnd.3m.post-it-notes"},
{ ".pwz", "application/vnd.ms-powerpoint"},
{ ".pya", "audio/vnd.ms-playready.media.pya"},
{ ".pyv", "video/vnd.ms-playready.media.pyv"},
{ ".qam", "application/vnd.epson.quickanime"},
{ ".qbo", "application/vnd.intu.qbo"},
{ ".qfx", "application/vnd.intu.qfx"},
{ ".qht", "text/x-html-insertion"},
{ ".qhtm", "text/x-html-insertion"},
{ ".qps", "application/vnd.publishare-delta-tree"},
{ ".qt", "video/quicktime"},
{ ".qti", "image/x-quicktime"},
{ ".qtif", "image/x-quicktime"},
{ ".qtl", "application/x-quicktimeplayer"},
{ ".qwd", "application/vnd.quark.quarkxpress"},
{ ".qwt", "application/vnd.quark.quarkxpress"},
{ ".qxb", "application/vnd.quark.quarkxpress"},
{ ".qxd", "application/octet-stream"},
{ ".qxl", "application/vnd.quark.quarkxpress"},
{ ".qxt", "application/vnd.quark.quarkxpress"},
{ ".ra", "audio/x-pn-realaudio"},
{ ".ram", "audio/x-pn-realaudio"},
{ ".rar", "application/octet-stream"},
{ ".ras", "image/x-cmu-raster"},
{ ".rat", "application/rat-file"},
{ ".rc", "text/plain"},
{ ".rc2", "text/plain"},
{ ".rcprofile", "application/vnd.ipunplugged.rcprofile"},
{ ".rct", "text/plain"},
{ ".rdf", "application/rdf+xml"},
{ ".rdlc", "application/xml"},
{ ".rdz", "application/vnd.data-vision.rdz"},
{ ".rep", "application/vnd.businessobjects"},
{ ".res", "application/x-dtbresource+xml"},
{ ".resx", "application/xml"},
{ ".rf", "image/vnd.rn-realflash"},
{ ".rgb", "image/x-rgb"},
{ ".rgs", "text/plain"},
{ ".rif", "application/reginfo+xml"},
{ ".rip", "audio/vnd.rip"},
{ ".ris", "application/x-research-info-systems"},
{ ".rl", "application/resource-lists+xml"},
{ ".rlc", "image/vnd.fujixerox.edmics-rlc"},
{ ".rld", "application/resource-lists-diff+xml"},
{ ".rm", "application/vnd.rn-realmedia"},
{ ".rmi", "audio/mid"},
{ ".rmp", "application/vnd.rn-rn_music_package"},
{ ".rms", "application/vnd.jcp.javame.midlet-rms"},
{ ".rmvb", "application/vnd.rn-realmedia-vbr"},
{ ".rnc", "application/relax-ng-compact-syntax"},
{ ".roa", "application/rpki-roa"},
{ ".roff", "application/x-troff"},
{ ".rp9", "application/vnd.cloanto.rp9"},
{ ".rpm", "audio/x-pn-realaudio-plugin"},
{ ".rpss", "application/vnd.nokia.radio-presets"},
{ ".rpst", "application/vnd.nokia.radio-preset"},
{ ".rq", "application/sparql-query"},
{ ".rqy", "text/x-ms-rqy"},
{ ".rs", "application/rls-services+xml"},
{ ".rsd", "application/rsd+xml"},
{ ".rss", "application/rss+xml"},
{ ".rtf", "application/rtf"},
{ ".rtx", "text/richtext"},
{ ".ruleset", "application/xml"},
{ ".s", "text/plain"},
{ ".s3m", "audio/s3m"},
{ ".saf", "application/vnd.yamaha.smaf-audio"},
{ ".safariextz", "application/x-safari-safariextz"},
{ ".sbml", "application/sbml+xml"},
{ ".sc", "application/vnd.ibm.secure-container"},
{ ".scd", "application/x-msschedule"},
{ ".scm", "application/vnd.lotus-screencam"},
{ ".scq", "application/scvp-cv-request"},
{ ".scs", "application/scvp-cv-response"},
{ ".sct", "text/scriptlet"},
{ ".scurl", "text/vnd.curl.scurl"},
{ ".sd2", "audio/x-sd2"},
{ ".sda", "application/vnd.stardivision.draw"},
{ ".sdc", "application/vnd.stardivision.calc"},
{ ".sdd", "application/vnd.stardivision.impress"},
{ ".sdkd", "application/vnd.solent.sdkm+xml"},
{ ".sdkm", "application/vnd.solent.sdkm+xml"},
{ ".sdp", "application/sdp"},
{ ".sdw", "application/vnd.stardivision.writer"},
{ ".sea", "application/octet-stream"},
{ ".searchconnector-ms", "application/windows-search-connector+xml"},
{ ".see", "application/vnd.seemail"},
{ ".seed", "application/vnd.fdsn.seed"},
{ ".sema", "application/vnd.sema"},
{ ".semd", "application/vnd.semd"},
{ ".semf", "application/vnd.semf"},
{ ".ser", "application/java-serialized-object"},
{ ".setpay", "application/set-payment-initiation"},
{ ".setreg", "application/set-registration-initiation"},
{ ".settings", "application/xml"},
{ ".sfd-hdstx", "application/vnd.hydrostatix.sof-data"},
{ ".sfs", "application/vnd.spotfire.sfs"},
{ ".sfv", "text/x-sfv"},
{ ".sgi", "image/sgi"},
{ ".sgimb", "application/x-sgimb"},
{ ".sgl", "application/vnd.stardivision.writer-global"},
{ ".sgm", "text/sgml"},
{ ".sgml", "text/sgml"},
{ ".sh", "application/x-sh"},
{ ".shar", "application/x-shar"},
{ ".shf", "application/shf+xml"},
{ ".shtml", "text/html"},
{ ".sid", "image/x-mrsid-image"},
{ ".sig", "application/pgp-signature"},
{ ".sil", "audio/silk"},
{ ".silo", "model/mesh"},
{ ".sis", "application/vnd.symbian.install"},
{ ".sisx", "application/vnd.symbian.install"},
{ ".sit", "application/x-stuffit"},
{ ".sitemap", "application/xml"},
{ ".sitx", "application/x-stuffitx"},
{ ".skd", "application/vnd.koan"},
{ ".skin", "application/xml"},
{ ".skm", "application/vnd.koan"},
{ ".skp", "application/vnd.koan"},
{ ".skt", "application/vnd.koan"},
{ ".sldm", "application/vnd.ms-powerpoint.slide.macroEnabled.12"},
{ ".sldx", "application/vnd.openxmlformats-officedocument.presentationml.slide"},
{ ".slk", "application/vnd.ms-excel"},
{ ".sln", "text/plain"},
{ ".slt", "application/vnd.epson.salt"},
{ ".slupkg-ms", "application/x-ms-license"},
{ ".sm", "application/vnd.stepmania.stepchart"},
{ ".smd", "audio/x-smd"},
{ ".smf", "application/vnd.stardivision.math"},
{ ".smi", "application/octet-stream"},
{ ".smil", "application/smil+xml"},
{ ".smv", "video/x-smv"},
{ ".smx", "audio/x-smd"},
{ ".smz", "audio/x-smd"},
{ ".smzip", "application/vnd.stepmania.package"},
{ ".snd", "audio/basic"},
{ ".snf", "application/x-font-snf"},
{ ".snippet", "application/xml"},
{ ".snp", "application/octet-stream"},
{ ".so", "application/octet-stream"},
{ ".sol", "text/plain"},
{ ".sor", "text/plain"},
{ ".spc", "application/x-pkcs7-certificates"},
{ ".spf", "application/vnd.yamaha.smaf-phrase"},
{ ".spl", "application/futuresplash"},
{ ".spot", "text/vnd.in3d.spot"},
{ ".spp", "application/scvp-vp-response"},
{ ".spq", "application/scvp-vp-request"},
{ ".spx", "audio/ogg"},
{ ".sql", "application/x-sql"},
{ ".src", "application/x-wais-source"},
{ ".srf", "text/plain"},
{ ".srt", "application/x-subrip"},
{ ".sru", "application/sru+xml"},
{ ".srx", "application/sparql-results+xml"},
{ ".ssdl", "application/ssdl+xml"},
{ ".sse", "application/vnd.kodak-descriptor"},
{ ".ssf", "application/vnd.epson.ssf"},
{ ".ssisdeploymentmanifest", "text/xml"},
{ ".ssm", "application/streamingmedia"},
{ ".ssml", "application/ssml+xml"},
{ ".sst", "application/vnd.ms-pki.certstore"},
{ ".st", "application/vnd.sailingtracker.track"},
{ ".stc", "application/vnd.sun.xml.calc.template"},
{ ".std", "application/vnd.sun.xml.draw.template"},
{ ".stf", "application/vnd.wt.stf"},
{ ".sti", "application/vnd.sun.xml.impress.template"},
{ ".stk", "application/hyperstudio"},
{ ".stl", "application/vnd.ms-pki.stl"},
{ ".str", "application/vnd.pg.format"},
{ ".stw", "application/vnd.sun.xml.writer.template"},
{ ".sub", "text/vnd.dvb.subtitle"},
{ ".sus", "application/vnd.sus-calendar"},
{ ".susp", "application/vnd.sus-calendar"},
{ ".sv4cpio", "application/x-sv4cpio"},
{ ".sv4crc", "application/x-sv4crc"},
{ ".svc", "application/xml"},
{ ".svd", "application/vnd.svd"},
{ ".svg", "image/svg+xml"},
{ ".svgz", "image/svg+xml"},
{ ".swa", "application/x-director"},
{ ".swf", "application/x-shockwave-flash"},
{ ".swi", "application/vnd.aristanetworks.swi"},
{ ".sxc", "application/vnd.sun.xml.calc"},
{ ".sxd", "application/vnd.sun.xml.draw"},
{ ".sxg", "application/vnd.sun.xml.writer.global"},
{ ".sxi", "application/vnd.sun.xml.impress"},
{ ".sxm", "application/vnd.sun.xml.math"},
{ ".sxw", "application/vnd.sun.xml.writer"},
{ ".t", "application/x-troff"},
{ ".t3", "application/x-t3vm-image"},
{ ".taglet", "application/vnd.mynfc"},
{ ".tao", "application/vnd.tao.intent-module-archive"},
{ ".tar", "application/x-tar"},
{ ".tcap", "application/vnd.3gpp2.tcap"},
{ ".tcl", "application/x-tcl"},
{ ".teacher", "application/vnd.smart.teacher"},
{ ".tei", "application/tei+xml"},
{ ".teicorpus", "application/tei+xml"},
{ ".testrunconfig", "application/xml"},
{ ".testsettings", "application/xml"},
{ ".tex", "application/x-tex"},
{ ".texi", "application/x-texinfo"},
{ ".texinfo", "application/x-texinfo"},
{ ".text", "text/plain"},
{ ".tfi", "application/thraud+xml"},
{ ".tfm", "application/x-tex-tfm"},
{ ".tga", "image/x-tga"},
{ ".tgz", "application/x-compressed"},
{ ".thmx", "application/vnd.ms-officetheme"},
{ ".thn", "application/octet-stream"},
{ ".tif", "image/tiff"},
{ ".tiff", "image/tiff"},
{ ".tlh", "text/plain"},
{ ".tli", "text/plain"},
{ ".tmo", "application/vnd.tmobile-livetv"},
{ ".toc", "application/octet-stream"},
{ ".torrent", "application/x-bittorrent"},
{ ".tpl", "application/vnd.groove-tool-template"},
{ ".tpt", "application/vnd.trid.tpt"},
{ ".tr", "application/x-troff"},
{ ".tra", "application/vnd.trueapp"},
{ ".trm", "application/x-msterminal"},
{ ".trx", "application/xml"},
{ ".ts", "video/vnd.dlna.mpeg-tts"},
{ ".tsd", "application/timestamped-data"},
{ ".tsv", "text/tab-separated-values"},
{ ".ttc", "font/collection"},
{ ".ttf", "application/octet-stream"},
{ ".ttl", "text/turtle"},
{ ".tts", "video/vnd.dlna.mpeg-tts"},
{ ".twd", "application/vnd.simtech-mindmapper"},
{ ".twds", "application/vnd.simtech-mindmapper"},
{ ".txd", "application/vnd.genomatix.tuxedo"},
{ ".txf", "application/vnd.mobius.txf"},
{ ".txt", "text/plain"},
{ ".u32", "application/octet-stream"},
{ ".udeb", "application/x-debian-package"},
{ ".ufd", "application/vnd.ufdl"},
{ ".ufdl", "application/vnd.ufdl"},
{ ".uls", "text/iuls"},
{ ".ulx", "application/x-glulx"},
{ ".umj", "application/vnd.umajin"},
{ ".unityweb", "application/vnd.unity"},
{ ".uoml", "application/vnd.uoml+xml"},
{ ".uri", "text/uri-list"},
{ ".uris", "text/uri-list"},
{ ".urls", "text/uri-list"},
{ ".user", "text/plain"},
{ ".ustar", "application/x-ustar"},
{ ".utz", "application/vnd.uiq.theme"},
{ ".uu", "text/x-uuencode"},
{ ".uva", "audio/vnd.dece.audio"},
{ ".uvd", "application/vnd.dece.data"},
{ ".uvf", "application/vnd.dece.data"},
{ ".uvg", "image/vnd.dece.graphic"},
{ ".uvh", "video/vnd.dece.hd"},
{ ".uvi", "image/vnd.dece.graphic"},
{ ".uvm", "video/vnd.dece.mobile"},
{ ".uvp", "video/vnd.dece.pd"},
{ ".uvs", "video/vnd.dece.sd"},
{ ".uvt", "application/vnd.dece.ttml+xml"},
{ ".uvu", "video/vnd.uvvu.mp4"},
{ ".uvv", "video/vnd.dece.video"},
{ ".uvva", "audio/vnd.dece.audio"},
{ ".uvvd", "application/vnd.dece.data"},
{ ".uvvf", "application/vnd.dece.data"},
{ ".uvvg", "image/vnd.dece.graphic"},
{ ".uvvh", "video/vnd.dece.hd"},
{ ".uvvi", "image/vnd.dece.graphic"},
{ ".uvvm", "video/vnd.dece.mobile"},
{ ".uvvp", "video/vnd.dece.pd"},
{ ".uvvs", "video/vnd.dece.sd"},
{ ".uvvt", "application/vnd.dece.ttml+xml"},
{ ".uvvu", "video/vnd.uvvu.mp4"},
{ ".uvvv", "video/vnd.dece.video"},
{ ".uvvx", "application/vnd.dece.unspecified"},
{ ".uvvz", "application/vnd.dece.zip"},
{ ".uvx", "application/vnd.dece.unspecified"},
{ ".uvz", "application/vnd.dece.zip"},
{ ".vb", "text/plain"},
{ ".vbdproj", "text/plain"},
{ ".vbk", "video/mpeg"},
{ ".vbproj", "text/plain"},
{ ".vbs", "text/vbscript"},
{ ".vcard", "text/vcard"},
{ ".vcd", "application/x-cdlink"},
{ ".vcf", "text/x-vcard"},
{ ".vcg", "application/vnd.groove-vcard"},
{ ".vcproj", "Application/xml"},
{ ".vcs", "text/plain"},
{ ".vcx", "application/vnd.vcx"},
{ ".vcxproj", "Application/xml"},
{ ".vddproj", "text/plain"},
{ ".vdp", "text/plain"},
{ ".vdproj", "text/plain"},
{ ".vdx", "application/vnd.ms-visio.viewer"},
{ ".vis", "application/vnd.visionary"},
{ ".viv", "video/vnd.vivo"},
{ ".vml", "text/xml"},
{ ".vob", "video/x-ms-vob"},
{ ".vor", "application/vnd.stardivision.writer"},
{ ".vox", "application/x-authorware-bin"},
{ ".vrml", "model/vrml"},
{ ".vscontent", "application/xml"},
{ ".vsct", "text/xml"},
{ ".vsd", "application/vnd.visio"},
{ ".vsf", "application/vnd.vsf"},
{ ".vsi", "application/ms-vsi"},
{ ".vsix", "application/vsix"},
{ ".vsixlangpack", "text/xml"},
{ ".vsixmanifest", "text/xml"},
{ ".vsmdi", "application/xml"},
{ ".vspscc", "text/plain"},
{ ".vss", "application/vnd.visio"},
{ ".vsscc", "text/plain"},
{ ".vssettings", "text/xml"},
{ ".vssscc", "text/plain"},
{ ".vst", "application/vnd.visio"},
{ ".vstemplate", "text/xml"},
{ ".vsto", "application/x-ms-vsto"},
{ ".vsw", "application/vnd.visio"},
{ ".vsx", "application/vnd.visio"},
{ ".vtu", "model/vnd.vtu"},
{ ".vtx", "application/vnd.visio"},
{ ".vxml", "application/voicexml+xml"},
{ ".w3d", "application/x-director"},
{ ".wad", "application/x-doom"},
{ ".wav", "audio/wav"},
{ ".wave", "audio/wav"},
{ ".wax", "audio/x-ms-wax"},
{ ".wbk", "application/msword"},
{ ".wbmp", "image/vnd.wap.wbmp"},
{ ".wbs", "application/vnd.criticaltools.wbs+xml"},
{ ".wbxml", "application/vnd.wap.wbxml"},
{ ".wcm", "application/vnd.ms-works"},
{ ".wdb", "application/vnd.ms-works"},
{ ".wdp", "image/vnd.ms-photo"},
{ ".weba", "audio/webm"},
{ ".webarchive", "application/x-safari-webarchive"},
{ ".webm", "video/webm"},
{ ".webp", "image/webp"},
{ ".webtest", "application/xml"},
{ ".wg", "application/vnd.pmi.widget"},
{ ".wgt", "application/widget"},
{ ".wiq", "application/xml"},
{ ".wiz", "application/msword"},
{ ".wks", "application/vnd.ms-works"},
{ ".wlmp", "application/wlmoviemaker"},
{ ".wlpginstall", "application/x-wlpg-detect"},
{ ".wlpginstall3", "application/x-wlpg3-detect"},
{ ".wm", "video/x-ms-wm"},
{ ".wma", "audio/x-ms-wma"},
{ ".wmd", "application/x-ms-wmd"},
{ ".wmf", "application/x-msmetafile"},
{ ".wml", "text/vnd.wap.wml"},
{ ".wmlc", "application/vnd.wap.wmlc"},
{ ".wmls", "text/vnd.wap.wmlscript"},
{ ".wmlsc", "application/vnd.wap.wmlscriptc"},
{ ".wmp", "video/x-ms-wmp"},
{ ".wmv", "video/x-ms-wmv"},
{ ".wmx", "video/x-ms-wmx"},
{ ".wmz", "application/x-ms-wmz"},
{ ".woff", "font/woff"},
{ ".woff2", "font/woff2"},
{ ".wpd", "application/vnd.wordperfect"},
{ ".wpl", "application/vnd.ms-wpl"},
{ ".wps", "application/vnd.ms-works"},
{ ".wqd", "application/vnd.wqd"},
{ ".wri", "application/x-mswrite"},
{ ".wrl", "x-world/x-vrml"},
{ ".wrz", "x-world/x-vrml"},
{ ".wsc", "text/scriptlet"},
{ ".wsdl", "text/xml"},
{ ".wspolicy", "application/wspolicy+xml"},
{ ".wtb", "application/vnd.webturbo"},
{ ".wvx", "video/x-ms-wvx"},
{ ".x", "application/directx"},
{ ".x32", "application/x-authorware-bin"},
{ ".x3d", "model/x3d+xml"},
{ ".x3db", "model/x3d+binary"},
{ ".x3dbz", "model/x3d+binary"},
{ ".x3dv", "model/x3d+vrml"},
{ ".x3dvz", "model/x3d+vrml"},
{ ".x3dz", "model/x3d+xml"},
{ ".xaf", "x-world/x-vrml"},
{ ".xaml", "application/xaml+xml"},
{ ".xap", "application/x-silverlight-app"},
{ ".xar", "application/vnd.xara"},
{ ".xbap", "application/x-ms-xbap"},
{ ".xbd", "application/vnd.fujixerox.docuworks.binder"},
{ ".xbm", "image/x-xbitmap"},
{ ".xdf", "application/xcap-diff+xml"},
{ ".xdm", "application/vnd.syncml.dm+xml"},
{ ".xdp", "application/vnd.adobe.xdp+xml"},
{ ".xdr", "text/plain"},
{ ".xdssc", "application/dssc+xml"},
{ ".xdw", "application/vnd.fujixerox.docuworks"},
{ ".xenc", "application/xenc+xml"},
{ ".xer", "application/patch-ops-error+xml"},
{ ".xfdf", "application/vnd.adobe.xfdf"},
{ ".xfdl", "application/vnd.xfdl"},
{ ".xht", "application/xhtml+xml"},
{ ".xhtml", "application/xhtml+xml"},
{ ".xhvml", "application/xv+xml"},
{ ".xif", "image/vnd.xiff"},
{ ".xla", "application/vnd.ms-excel"},
{ ".xlam", "application/vnd.ms-excel.addin.macroEnabled.12"},
{ ".xlc", "application/vnd.ms-excel"},
{ ".xld", "application/vnd.ms-excel"},
{ ".xlf", "application/x-xliff+xml"},
{ ".xlk", "application/vnd.ms-excel"},
{ ".xll", "application/vnd.ms-excel"},
{ ".xlm", "application/vnd.ms-excel"},
{ ".xls", "application/vnd.ms-excel"},
{ ".xlsb", "application/vnd.ms-excel.sheet.binary.macroEnabled.12"},
{ ".xlsm", "application/vnd.ms-excel.sheet.macroEnabled.12"},
{ ".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},
{ ".xlt", "application/vnd.ms-excel"},
{ ".xltm", "application/vnd.ms-excel.template.macroEnabled.12"},
{ ".xltx", "application/vnd.openxmlformats-officedocument.spreadsheetml.template"},
{ ".xlw", "application/vnd.ms-excel"},
{ ".xm", "audio/xm"},
{ ".xml", "text/xml"},
{ ".xmta", "application/xml"},
{ ".xo", "application/vnd.olpc-sugar"},
{ ".xof", "x-world/x-vrml"},
{ ".xoml", "text/plain"},
{ ".xop", "application/xop+xml"},
{ ".xpi", "application/x-xpinstall"},
{ ".xpl", "application/xproc+xml"},
{ ".xpm", "image/x-xpixmap"},
{ ".xpr", "application/vnd.is-xpr"},
{ ".xps", "application/vnd.ms-xpsdocument"},
{ ".xpw", "application/vnd.intercon.formnet"},
{ ".xpx", "application/vnd.intercon.formnet"},
{ ".xrm-ms", "text/xml"},
{ ".xsc", "application/xml"},
{ ".xsd", "text/xml"},
{ ".xsf", "text/xml"},
{ ".xsl", "text/xml"},
{ ".xslt", "text/xml"},
{ ".xsm", "application/vnd.syncml+xml"},
{ ".xsn", "application/octet-stream"},
{ ".xspf", "application/xspf+xml"},
{ ".xss", "application/xml"},
{ ".xtp", "application/octet-stream"},
{ ".xul", "application/vnd.mozilla.xul+xml"},
{ ".xvm", "application/xv+xml"},
{ ".xvml", "application/xv+xml"},
{ ".xwd", "image/x-xwindowdump"},
{ ".xyz", "chemical/x-xyz"},
{ ".xz", "application/x-xz"},
{ ".yang", "application/yang"},
{ ".yin", "application/yin+xml"},
{ ".z", "application/x-compress"},
{ ".z1", "application/x-zmachine"},
{ ".z2", "application/x-zmachine"},
{ ".z3", "application/x-zmachine"},
{ ".z4", "application/x-zmachine"},
{ ".z5", "application/x-zmachine"},
{ ".z6", "application/x-zmachine"},
{ ".z7", "application/x-zmachine"},
{ ".z8", "application/x-zmachine"},
{ ".zaz", "application/vnd.zzazz.deck+xml"},
{ ".zip", "application/x-zip-compressed"},
{ ".zir", "application/vnd.zul"},
{ ".zirz", "application/vnd.zul"},
{ ".zmm", "application/vnd.handheld-entertainment+xml"}
};
#endregion
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment