mime.types解释

[root@release nginx]# more mime.types

types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;

text/mathml                                      mml;
text/plain                                       txt;
text/vnd.sun.j2me.app-descriptor                 jad;
text/vnd.wap.wml                                 wml;
text/x-component                                 htc;

image/png                                        png;
image/svg+xml                                    svg svgz;
image/tiff                                       tif tiff;
image/vnd.wap.wbmp                               wbmp;
image/webp                                       webp;
image/x-icon                                     ico;
image/x-jng                                      jng;
image/x-ms-bmp                                   bmp;

font/woff                                        woff;
font/woff2                                       woff2;

application/java-archive                         jar war ear;
application/json                                 json;
application/mac-binhex40                         hqx;
application/msword                               doc;
application/pdf                                  pdf;
application/postscript                           ps eps ai;
application/rtf                                  rtf;
application/vnd.apple.mpegurl                    m3u8;
application/vnd.google-earth.kml+xml             kml;
application/vnd.google-earth.kmz                 kmz;
application/vnd.ms-excel                         xls;
application/vnd.ms-fontobject                    eot;
application/vnd.ms-powerpoint                    ppt;
application/vnd.oasis.opendocument.graphics      odg;
application/vnd.oasis.opendocument.presentation  odp;
application/vnd.oasis.opendocument.spreadsheet   ods;
application/vnd.oasis.opendocument.text          odt;
application/vnd.openxmlformats-officedocument.presentationml.presentation
                                                 pptx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
                                                 xlsx;
application/vnd.openxmlformats-officedocument.wordprocessingml.document
                                                 docx;
application/vnd.wap.wmlc                         wmlc;
application/x-7z-compressed                      7z;
application/x-cocoa                              cco;
application/x-java-archive-diff                  jardiff;
application/x-java-jnlp-file                     jnlp;
application/x-makeself                           run;
application/x-perl                               pl pm;
application/x-pilot                              prc pdb;
application/x-rar-compressed                     rar;
application/x-redhat-package-manager             rpm;
application/x-sea                                sea;
application/x-shockwave-flash                    swf;
application/x-stuffit                            sit;
application/x-tcl                                tcl tk;
application/x-x509-ca-cert                       der pem crt;
application/x-xpinstall                          xpi;
application/xhtml+xml                            xhtml;
application/xspf+xml                             xspf;
application/zip                                  zip;

application/octet-stream                         bin exe dll;
application/octet-stream                         deb;
application/octet-stream                         dmg;
application/octet-stream                         iso img;
application/octet-stream                         msi msp msm;

audio/midi                                       mid midi kar;
audio/mpeg                                       mp3;
audio/ogg                                        ogg;
audio/x-m4a                                      m4a;
audio/x-realaudio                                ra;

video/3gpp                                       3gpp 3gp;
video/mp2t                                       ts;
video/mp4                                        mp4;
video/mpeg                                       mpeg mpg;
video/quicktime                                  mov;
video/webm                                       webm;
video/x-flv                                      flv;
video/x-m4v                                      m4v;
video/x-mng                                      mng;
video/x-ms-asf                                   asx asf;
video/x-ms-wmv                                   wmv;
video/x-msvideo                                  avi;

}
mime.types 文件用于定义不同文件扩展名与MIME类型之间的映射关系。MIME类型用于告诉浏览器如何处理不同类型的文件,例如显示文本文件、播放音频或视频文件等。下面是文件内容的解释:

解释

  1. types { ... }:
  • 这一部分包含了MIME类型到文件扩展名的映射。每一行定义了一个MIME类型及其对应的文件扩展名。
  1. 示例条目解释
  • text/html html htm shtml;:
  • 定义了扩展名为 htmlhtmshtml 的文件对应的MIME类型是 text/html
  • image/jpeg jpeg jpg;:
  • 定义了扩展名为 jpegjpg 的文件对应的MIME类型是 image/jpeg
  • application/javascript js;:
  • 定义了扩展名为 js 的文件对应的MIME类型是 application/javascript
  • application/json json;:
  • 定义了扩展名为 json 的文件对应的MIME类型是 application/json
  1. 不同类型的文件
  • 文本文件:
  • text/html.html .htm .shtml
  • text/css.css
  • text/xml.xml
  • text/plain.txt
  • 图像文件:
  • image/gif.gif
  • image/jpeg.jpeg .jpg
  • image/png.png
  • image/svg+xml.svg .svgz
  • image/webp.webp
  • 音频文件:
  • audio/mpeg.mp3
  • audio/ogg.ogg
  • 视频文件:
  • video/mp4.mp4
  • video/webm.webm
  • 应用程序文件:
  • application/json.json
  • application/pdf.pdf
  • application/zip.zip

总结

mime.types 文件用于告诉Nginx如何根据文件扩展名设置HTTP头中的MIME类型。这有助于浏览器正确处理和显示不同类型的文件内容。例如,浏览器在收到 Content-Type: text/html 时会将文件作为HTML文档处理,而在收到 Content-Type: image/jpeg 时会将文件作为JPEG图像处理。