1
0
Fork 0
mirror of https://github.com/puma/puma.git synced 2022-11-09 13:48:40 -05:00

Implements the more extensive mime types now external to the mongrle source.

git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@467 19e92222-5c0b-0410-8929-a290d50e31e9
This commit is contained in:
zedshaw 2006-12-15 11:12:19 +00:00
parent 1d211fb406
commit c4fc2effca
3 changed files with 744 additions and 17 deletions

View file

@ -61,7 +61,7 @@ setup_gem(name, version) do |spec|
spec.test_files = Dir.glob('test/test_*.rb') spec.test_files = Dir.glob('test/test_*.rb')
spec.author="Zed A. Shaw" spec.author="Zed A. Shaw"
spec.executables=['mongrel_rails'] spec.executables=['mongrel_rails']
spec.files += %w(ext/http11/MANIFEST README Rakefile setup.rb) spec.files += %w(ext/http11/MANIFEST README Rakefile setup.rb lib/mongrel/mime_types.yml)
spec.required_ruby_version = '>= 1.8.4' spec.required_ruby_version = '>= 1.8.4'

View file

@ -6,6 +6,7 @@
require 'mongrel/stats' require 'mongrel/stats'
require 'zlib' require 'zlib'
require 'yaml'
module Mongrel module Mongrel
@ -104,21 +105,8 @@ module Mongrel
attr_accessor :default_content_type attr_accessor :default_content_type
attr_reader :path attr_reader :path
MIME_TYPES = { MIME_TYPES_FILE = "mime_types.yml"
".css" => "text/css", MIME_TYPES = YAML.load_file(File.join(File.dirname(__FILE__), MIME_TYPES_FILE))
".gif" => "image/gif",
".htm" => "text/html",
".html" => "text/html",
".jpeg" => "image/jpeg",
".jpg" => "image/jpeg",
".js" => "text/javascript",
".png" => "image/png",
".swf" => "application/x-shockwave-flash",
".txt" => "text/plain",
".xml" => "application/xml",
".rss" => "application/xml+rss",
".atom" => "application/xml+atom",
}
ONLY_HEAD_GET="Only HEAD and GET allowed.".freeze ONLY_HEAD_GET="Only HEAD and GET allowed.".freeze
@ -127,7 +115,7 @@ module Mongrel
@path = File.expand_path(path) @path = File.expand_path(path)
@listing_allowed=listing_allowed @listing_allowed=listing_allowed
@index_html = index_html @index_html = index_html
@default_content_type = "text/plain; charset=ISO-8859-1".freeze @default_content_type = "application/octet-stream".freeze
end end
# Checks if the given path can be served and returns the full path (or nil if not). # Checks if the given path can be served and returns the full path (or nil if not).

739
lib/mongrel/mime_types.yml Normal file
View file

@ -0,0 +1,739 @@
---
.323: text/h323
.3dm: x-world/x-3dmf
.3dmf: x-world/x-3dmf
.a: application/octet-stream
.aab: application/x-authorware-bin
.aam: application/x-authorware-map
.aas: application/x-authorware-seg
.abc: text/vnd.abc
.acgi: text/html
.acx: application/internet-property-stream
.afl: video/animaflex
.ai: application/postscript
.aif: audio/aiff
.aif: audio/x-aiff
.aifc: audio/aiff
.aifc: audio/x-aiff
.aiff: audio/aiff
.aiff: audio/x-aiff
.aim: application/x-aim
.aip: text/x-audiosoft-intra
.ani: application/x-navi-animation
.aos: application/x-nokia-9000-communicator-add-on-software
.aps: application/mime
.arc: application/octet-stream
.arj: application/arj
.arj: application/octet-stream
.art: image/x-jg
.asf: video/x-ms-asf
.asm: text/x-asm
.asp: text/asp
.asr: video/x-ms-asf
.asx: application/x-mplayer2
.asx: video/x-ms-asf
.asx: video/x-ms-asf-plugin
.atom: application/xml+atom
.au: audio/basic
.au: audio/x-au
.avi: application/x-troff-msvideo
.avi: video/avi
.avi: video/msvideo
.avi: video/x-msvideo
.avs: video/avs-video
.axs: application/olescript
.bas: text/plain
.bcpio: application/x-bcpio
.bin: application/mac-binary
.bin: application/macbinary
.bin: application/octet-stream
.bin: application/x-binary
.bin: application/x-macbinary
.bm: image/bmp
.bmp: image/bmp
.bmp: image/x-windows-bmp
.boo: application/book
.book: application/book
.boz: application/x-bzip2
.bsh: application/x-bsh
.bz2: application/x-bzip2
.bz: application/x-bzip
.c: ++ text/plain
.c: text/plain
.c: text/x-c
.cat: application/vnd.ms-pki.seccat
.cat: application/vnd.ms-pkiseccat
.cc: text/plain
.cc: text/x-c
.ccad: application/clariscad
.cco: application/x-cocoa
.cdf: application/cdf
.cdf: application/x-cdf
.cdf: application/x-netcdf
.cer: application/pkix-cert
.cer: application/x-x509-ca-cert
.cha: application/x-chat
.chat: application/x-chat
.class: application/java
.class: application/java-byte-code
.class: application/octet-stream
.class: application/x-java-class
.clp: application/x-msclip
.cmx: image/x-cmx
.cod: image/cis-cod
.com: application/octet-stream
.com: text/plain
.conf: text/plain
.cpio: application/x-cpio
.cpp: text/x-c
.cpt: application/mac-compactpro
.cpt: application/x-compactpro
.cpt: application/x-cpt
.crd: application/x-mscardfile
.crl: application/pkcs-crl
.crl: application/pkix-crl
.crt: application/pkix-cert
.crt: application/x-x509-ca-cert
.crt: application/x-x509-user-cert
.csh: application/x-csh
.csh: text/x-script.csh
.css: application/x-pointplus
.css: text/css
.cxx: text/plain
.dcr: application/x-director
.deb: application/octet-stream
.deepv: application/x-deepv
.def: text/plain
.der: application/x-x509-ca-cert
.dif: video/x-dv
.dir: application/x-director
.dl: video/dl
.dl: video/x-dl
.dll: application/octet-stream
.dll: application/x-msdownload
.dmg: application/octet-stream
.dms: application/octet-stream
.doc: application/msword
.dot: application/msword
.dp: application/commonground
.drw: application/drafting
.dump: application/octet-stream
.dv: video/x-dv
.dvi: application/x-dvi
.dwf: drawing/x-dwf (old)
.dwf: model/vnd.dwf
.dwg: application/acad
.dwg: image/vnd.dwg
.dwg: image/x-dwg
.dxf: application/dxf
.dxf: image/vnd.dwg
.dxf: image/x-dwg
.dxr: application/x-director
.ear: application/java-archive
.el: text/x-script.elisp
.elc: application/x-bytecode.elisp (compiled elisp)
.elc: application/x-elc
.env: application/x-envoy
.eot: application/octet-stream
.eps: application/postscript
.es: application/x-esrehber
.etx: text/x-setext
.evy: application/envoy
.evy: application/x-envoy
.exe: application/octet-stream
.f77: text/x-fortran
.f90: text/plain
.f90: text/x-fortran
.f: text/x-fortran
.fdf: application/vnd.fdf
.fif: application/fractals
.fif: image/fif
.fli: video/fli
.fli: video/x-fli
.flo: image/florian
.flr: x-world/x-vrml
.flv: video/x-flv
.flx: text/vnd.fmi.flexstor
.fmf: video/x-atomic3d-feature
.for: text/plain
.for: text/x-fortran
.fpx: image/vnd.fpx
.fpx: image/vnd.net-fpx
.frl: application/freeloader
.funk: audio/make
.g3: image/g3fax
.g: text/plain
.gif: image/gif
.gl: video/gl
.gl: video/x-gl
.gsd: audio/x-gsm
.gsm: audio/x-gsm
.gsp: application/x-gsp
.gss: application/x-gss
.gtar: application/x-gtar
.gz: application/x-compressed
.gz: application/x-gzip
.gzip: application/x-gzip
.gzip: multipart/x-gzip
.h: text/plain
.h: text/x-h
.hdf: application/x-hdf
.help: application/x-helpfile
.hgl: application/vnd.hp-hpgl
.hh: text/plain
.hh: text/x-h
.hlb: text/x-script
.hlp: application/hlp
.hlp: application/winhlp
.hlp: application/x-helpfile
.hlp: application/x-winhelp
.hpg: application/vnd.hp-hpgl
.hpgl: application/vnd.hp-hpgl
.hqx: application/binhex
.hqx: application/binhex4
.hqx: application/mac-binhex
.hqx: application/mac-binhex40
.hqx: application/x-binhex40
.hqx: application/x-mac-binhex40
.hta: application/hta
.htc: text/x-component
.htm: text/html
.html: text/html
.htmls: text/html
.htt: text/webviewhtml
.htx: text/html
.ice: x-conference/x-cooltalk
.ico: image/x-icon
.idc: text/plain
.ief: image/ief
.iefs: image/ief
.iges: application/iges
.iges: model/iges
.igs: application/iges
.igs: model/iges
.iii: application/x-iphone
.ima: application/x-ima
.imap: application/x-httpd-imap
.img: application/octet-stream
.inf: application/inf
.ins: application/x-internet-signup
.ins: application/x-internett-signup
.ip: application/x-ip2
.iso: application/octet-stream
.isp: application/x-internet-signup
.isu: video/x-isvideo
.it: audio/it
.iv: application/x-inventor
.ivr: i-world/i-vrml
.ivy: application/x-livescreen
.jam: audio/x-jam
.jar: application/java-archive
.jardiff: application/x-java-archive-diff
.jav: text/plain
.jav: text/x-java-source
.java: text/plain
.java: text/x-java-source
.jcm: application/x-java-commerce
.jfif-tbnl: image/jpeg
.jfif: image/jpeg
.jfif: image/pipeg
.jfif: image/pjpeg
.jng: image/x-jng
.jnlp: application/x-java-jnlp-file
.jpe: image/jpeg
.jpe: image/pjpeg
.jpeg: image/jpeg
.jpeg: image/pjpeg
.jpg: image/jpeg
.jpg: image/pjpeg
.jps: image/x-jps
.js: application/x-javascript
.js: text/javascript
.jut: image/jutvision
.kar: audio/midi
.kar: music/x-karaoke
.ksh: application/x-ksh
.ksh: text/x-script.ksh
.la: audio/nspaudio
.la: audio/x-nspaudio
.lam: audio/x-liveaudio
.latex: application/x-latex
.lha: application/lha
.lha: application/octet-stream
.lha: application/x-lha
.lhx: application/octet-stream
.list: text/plain
.lma: audio/nspaudio
.lma: audio/x-nspaudio
.log: text/plain
.lsf: video/x-la-asf
.lsp: application/x-lisp
.lsp: text/x-script.lisp
.lst: text/plain
.lsx: text/x-la-asf
.lsx: video/x-la-asf
.ltx: application/x-latex
.lzh: application/octet-stream
.lzh: application/x-lzh
.lzx: application/lzx
.lzx: application/octet-stream
.lzx: application/x-lzx
.m13: application/x-msmediaview
.m14: application/x-msmediaview
.m1v: video/mpeg
.m2a: audio/mpeg
.m2v: video/mpeg
.m3u: audio/x-mpegurl
.m3u: audio/x-mpequrl
.m: text/x-m
.man: application/x-troff-man
.map: application/x-navimap
.mar: text/plain
.mbd: application/mbedlet
.mc: application/x-magic-cap-package-1.0
.mcd: application/mcad
.mcd: application/x-mathcad
.mcf: image/vasa
.mcf: text/mcf
.mcp: application/netmc
.mdb: application/x-msaccess
.me: application/x-troff-me
.mht: message/rfc822
.mhtml: message/rfc822
.mid: application/x-midi
.mid: audio/mid
.mid: audio/midi
.mid: audio/x-mid
.mid: audio/x-midi
.mid: music/crescendo
.mid: x-music/x-midi
.midi: application/x-midi
.midi: audio/midi
.midi: audio/x-mid
.midi: audio/x-midi
.midi: music/crescendo
.midi: x-music/x-midi
.mif: application/x-frame
.mif: application/x-mif
.mime: message/rfc822
.mime: www/mime
.mjf: audio/x-vnd.audioexplosion.mjuicemediafile
.mjpg: video/x-motion-jpeg
.mm: application/base64
.mm: application/x-meme
.mme: application/base64
.mml: text/mathml
.mng: video/x-mng
.mny: application/x-msmoney
.mod: audio/mod
.mod: audio/x-mod
.moov: video/quicktime
.mov: video/quicktime
.movie: video/x-sgi-movie
.mp2: audio/mpeg
.mp2: audio/x-mpeg
.mp2: video/mpeg
.mp2: video/x-mpeg
.mp2: video/x-mpeq2a
.mp3: audio/mpeg
.mp3: audio/mpeg3
.mp3: audio/x-mpeg-3
.mp3: video/mpeg
.mp3: video/x-mpeg
.mpa: audio/mpeg
.mpa: video/mpeg
.mpc: application/x-project
.mpe: video/mpeg
.mpeg: video/mpeg
.mpg: audio/mpeg
.mpg: video/mpeg
.mpga: audio/mpeg
.mpp: application/vnd.ms-project
.mpt: application/x-project
.mpv2: video/mpeg
.mpv: application/x-project
.mpx: application/x-project
.mrc: application/marc
.ms: application/x-troff-ms
.msi: application/octet-stream
.msm: application/octet-stream
.msp: application/octet-stream
.mv: video/x-sgi-movie
.mvb: application/x-msmediaview
.my: audio/make
.mzz: application/x-vnd.audioexplosion.mzz
.nap: image/naplps
.naplps: image/naplps
.nc: application/x-netcdf
.ncm: application/vnd.nokia.configuration-message
.nif: image/x-niff
.niff: image/x-niff
.nix: application/x-mix-transfer
.nsc: application/x-conference
.nvd: application/x-navidoc
.nws: message/rfc822
.o: application/octet-stream
.oda: application/oda
.omc: application/x-omc
.omcd: application/x-omcdatamaker
.omcr: application/x-omcregerator
.p10: application/pkcs10
.p10: application/x-pkcs10
.p12: application/pkcs-12
.p12: application/x-pkcs12
.p7a: application/x-pkcs7-signature
.p7b: application/x-pkcs7-certificates
.p7c: application/pkcs7-mime
.p7c: application/x-pkcs7-mime
.p7m: application/pkcs7-mime
.p7m: application/x-pkcs7-mime
.p7r: application/x-pkcs7-certreqresp
.p7s: application/pkcs7-signature
.p7s: application/x-pkcs7-signature
.p: text/x-pascal
.part: application/pro_eng
.pas: text/pascal
.pbm: image/x-portable-bitmap
.pcl: application/vnd.hp-pcl
.pcl: application/x-pcl
.pct: image/x-pict
.pcx: image/x-pcx
.pdb: application/x-pilot
.pdb: chemical/x-pdb
.pdf: application/pdf
.pem: application/x-x509-ca-cert
.pfunk: audio/make
.pfunk: audio/make.my.funk
.pfx: application/x-pkcs12
.pgm: image/x-portable-graymap
.pgm: image/x-portable-greymap
.pic: image/pict
.pict: image/pict
.pkg: application/x-newton-compatible-pkg
.pko: application/vnd.ms-pki.pko
.pko: application/ynd.ms-pkipko
.pl: application/x-perl
.pl: text/plain
.pl: text/x-script.perl
.plx: application/x-pixclscript
.pm4: application/x-pagemaker
.pm5: application/x-pagemaker
.pm: application/x-perl
.pm: image/x-xpixmap
.pm: text/x-script.perl-module
.pma: application/x-perfmon
.pmc: application/x-perfmon
.pml: application/x-perfmon
.pmr: application/x-perfmon
.pmw: application/x-perfmon
.png: image/png
.pnm: application/x-portable-anymap
.pnm: image/x-portable-anymap
.pot,: application/vnd.ms-powerpoint
.pot: application/mspowerpoint
.pot: application/vnd.ms-powerpoint
.pov: model/x-pov
.ppa: application/vnd.ms-powerpoint
.ppm: image/x-portable-pixmap
.pps: application/mspowerpoint
.pps: application/vnd.ms-powerpoint
.ppt: application/mspowerpoint
.ppt: application/powerpoint
.ppt: application/vnd.ms-powerpoint
.ppt: application/x-mspowerpoint
.ppz: application/mspowerpoint
.prc: application/x-pilot
.pre: application/x-freelance
.prf: application/pics-rules
.prt: application/pro_eng
.ps: application/postscript
.psd: application/octet-stream
.pub: application/x-mspublisher
.pvu: paleovu/x-pv
.pwz: application/vnd.ms-powerpoint
.py: text/x-script.phyton
.pyc: applicaiton/x-bytecode.python
.qcp: audio/vnd.qcelp
.qd3: x-world/x-3dmf
.qd3d: x-world/x-3dmf
.qif: image/x-quicktime
.qt: video/quicktime
.qtc: video/x-qtc
.qti: image/x-quicktime
.qtif: image/x-quicktime
.ra: audio/x-pn-realaudio
.ra: audio/x-pn-realaudio-plugin
.ra: audio/x-realaudio
.ram: audio/x-pn-realaudio
.rar: application/x-rar-compressed
.ras: application/x-cmu-raster
.ras: image/cmu-raster
.ras: image/x-cmu-raster
.rast: image/cmu-raster
.rexx: text/x-script.rexx
.rf: image/vnd.rn-realflash
.rgb: image/x-rgb
.rm: application/vnd.rn-realmedia
.rm: audio/x-pn-realaudio
.rmi: audio/mid
.rmm: audio/x-pn-realaudio
.rmp: audio/x-pn-realaudio
.rmp: audio/x-pn-realaudio-plugin
.rng: application/ringing-tones
.rng: application/vnd.nokia.ringing-tone
.rnx: application/vnd.rn-realplayer
.roff: application/x-troff
.rp: image/vnd.rn-realpix
.rpm: application/x-redhat-package-manager
.rpm: audio/x-pn-realaudio-plugin
.rss: application/xml+rss
.rss: text/xml
.rt: text/richtext
.rt: text/vnd.rn-realtext
.rtf: application/rtf
.rtf: application/x-rtf
.rtf: text/richtext
.rtx: application/rtf
.rtx: text/richtext
.run: application/x-makeself
.rv: video/vnd.rn-realvideo
.s3m: audio/s3m
.s: text/x-asm
.saveme: application/octet-stream
.sbk: application/x-tbook
.scd: application/x-msschedule
.scm: application/x-lotusscreencam
.scm: text/x-script.guile
.scm: text/x-script.scheme
.scm: video/x-scm
.sct: text/scriptlet
.sdml: text/plain
.sdp: application/sdp
.sdp: application/x-sdp
.sdr: application/sounder
.sea: application/sea
.sea: application/x-sea
.set: application/set
.setpay: application/set-payment-initiation
.setreg: application/set-registration-initiation
.sgm: text/sgml
.sgm: text/x-sgml
.sgml: text/sgml
.sgml: text/x-sgml
.sh: application/x-bsh
.sh: application/x-sh
.sh: application/x-shar
.sh: text/x-script.sh
.shar: application/x-bsh
.shar: application/x-shar
.shtml: text/html
.shtml: text/x-server-parsed-html
.sid: audio/x-psid
.sit: application/x-sit
.sit: application/x-stuffit
.skd: application/x-koan
.skm: application/x-koan
.skp: application/x-koan
.skt: application/x-koan
.sl: application/x-seelogo
.smi: application/smil
.smil: application/smil
.snd: audio/basic
.snd: audio/x-adpcm
.sol: application/solids
.spc: application/x-pkcs7-certificates
.spc: text/x-speech
.spl: application/futuresplash
.spr: application/x-sprite
.sprite: application/x-sprite
.src: application/x-wais-source
.ssi: text/x-server-parsed-html
.ssm: application/streamingmedia
.sst: application/vnd.ms-pki.certstore
.sst: application/vnd.ms-pkicertstore
.step: application/step
.stl: application/sla
.stl: application/vnd.ms-pki.stl
.stl: application/vnd.ms-pkistl
.stl: application/x-navistyle
.stm: text/html
.stp: application/step
.sv4cpio: application/x-sv4cpio
.sv4crc: application/x-sv4crc
.svf: image/vnd.dwg
.svf: image/x-dwg
.svg: image/svg+xml
.svr: application/x-world
.svr: x-world/x-svr
.swf: application/x-shockwave-flash
.t: application/x-troff
.talk: text/x-speech
.tar: application/x-tar
.tbk: application/toolbook
.tbk: application/x-tbook
.tcl: application/x-tcl
.tcl: text/x-script.tcl
.tcsh: text/x-script.tcsh
.tex: application/x-tex
.texi: application/x-texinfo
.texinfo: application/x-texinfo
.text: application/plain
.text: text/plain
.tgz: application/gnutar
.tgz: application/x-compressed
.tif: image/tiff
.tif: image/x-tiff
.tiff: image/tiff
.tiff: image/x-tiff
.tk: application/x-tcl
.tr: application/x-troff
.trm: application/x-msterminal
.tsi: audio/tsp-audio
.tsp: application/dsptype
.tsp: audio/tsplayer
.tsv: text/tab-separated-values
.turbot: image/florian
.txt: text/plain
.uil: text/x-uil
.uls: text/iuls
.uni: text/uri-list
.unis: text/uri-list
.unv: application/i-deas
.uri: text/uri-list
.uris: text/uri-list
.ustar: application/x-ustar
.ustar: multipart/x-ustar
.uu: application/octet-stream
.uu: text/x-uuencode
.uue: text/x-uuencode
.vcd: application/x-cdlink
.vcf: text/x-vcard
.vcs: text/x-vcalendar
.vda: application/vda
.vdo: video/vdo
.vew: application/groupwise
.viv: video/vivo
.viv: video/vnd.vivo
.vivo: video/vivo
.vivo: video/vnd.vivo
.vmd: application/vocaltec-media-desc
.vmf: application/vocaltec-media-file
.voc: audio/voc
.voc: audio/x-voc
.vos: video/vosaic
.vox: audio/voxware
.vqe: audio/x-twinvq-plugin
.vqf: audio/x-twinvq
.vql: audio/x-twinvq-plugin
.vrml: application/x-vrml
.vrml: model/vrml
.vrml: x-world/x-vrml
.vrt: x-world/x-vrt
.vsd: application/x-visio
.vst: application/x-visio
.vsw: application/x-visio
.w60: application/wordperfect6.0
.w61: application/wordperfect6.1
.w6w: application/msword
.war: application/java-archive
.wav: audio/wav
.wav: audio/x-wav
.wb1: application/x-qpro
.wbmp: image/vnd.wap.wbmp
.wbmp: image/vnd.wap.wbmp
.wcm: application/vnd.ms-works
.wdb: application/vnd.ms-works
.web: application/vnd.xara
.wiz: application/msword
.wk1: application/x-123
.wks: application/vnd.ms-works
.wmf: application/x-msmetafile
.wmf: windows/metafile
.wml: text/vnd.wap.wml
.wmlc: application/vnd.wap.wmlc
.wmls: text/vnd.wap.wmlscript
.wmlsc: application/vnd.wap.wmlscriptc
.wmv: video/x-ms-wmv
.word: application/msword
.wp5: application/wordperfect
.wp5: application/wordperfect6.0
.wp6: application/wordperfect
.wp: application/wordperfect
.wpd: application/wordperfect
.wpd: application/x-wpwin
.wps: application/vnd.ms-works
.wq1: application/x-lotus
.wri: application/mswrite
.wri: application/x-mswrite
.wri: application/x-wri
.wrl: application/x-world
.wrl: model/vrml
.wrl: x-world/x-vrml
.wrz: model/vrml
.wrz: x-world/x-vrml
.wsc: text/scriplet
.wsrc: application/x-wais-source
.wtk: application/x-wintalk
.x-png: image/png
.xaf: x-world/x-vrml
.xbm: image/x-xbitmap
.xbm: image/x-xbm
.xbm: image/xbm
.xdr: video/x-amt-demorun
.xgz: xgl/drawing
.xif: image/vnd.xiff
.xl: application/excel
.xla: application/excel
.xla: application/vnd.ms-excel
.xla: application/x-excel
.xla: application/x-msexcel
.xlb: application/excel
.xlb: application/vnd.ms-excel
.xlb: application/x-excel
.xlc: application/excel
.xlc: application/vnd.ms-excel
.xlc: application/x-excel
.xld: application/excel
.xld: application/x-excel
.xlk: application/excel
.xlk: application/x-excel
.xll: application/excel
.xll: application/vnd.ms-excel
.xll: application/x-excel
.xlm: application/excel
.xlm: application/vnd.ms-excel
.xlm: application/x-excel
.xls: application/excel
.xls: application/vnd.ms-excel
.xls: application/x-excel
.xls: application/x-msexcel
.xlt: application/excel
.xlt: application/vnd.ms-excel
.xlt: application/x-excel
.xlv: application/excel
.xlv: application/x-excel
.xlw: application/excel
.xlw: application/vnd.ms-excel
.xlw: application/x-excel
.xlw: application/x-msexcel
.xm: audio/xm
.xml: application/xml
.xml: text/xml
.xmz: xgl/movie
.xof: x-world/x-vrml
.xpi: application/x-xpinstall
.xpix: application/x-vnd.ls-xpix
.xpm: image/x-xpixmap
.xpm: image/xpm
.xsr: video/x-amt-showrun
.xwd: image/x-xwd
.xwd: image/x-xwindowdump
.xyz: chemical/x-pdb
.z: application/x-compress
.z: application/x-compressed
.zip: application/x-compressed
.zip: application/x-zip-compressed
.zip: application/zip
.zip: multipart/x-zip
.zoo: application/octet-stream
.zsh: text/x-script.zsh