Mit Nginx können Sie Dateierweiterungen MIME-Typen zuordnen. Wie in der Dokumentation angegeben , enthält es sogar eine vorgefertigte Liste von MIME-Typen (am Ende der Frage eingefügt).
Ich habe dieser Liste immer vertraut und die Dinge funktionieren großartig, aber jetzt habe ich festgestellt, dass einige Typen fehlen.
Was ist mit application/javascript
und application/json
?
Es verwendet das alte veraltete application/x-javascript
und ich stelle mir vor, dass es die IE-Unterstützung sicherstellen soll ... aber ist es wirklich in Ordnung?
Welche Typen sollten auch gezippt werden?
Ich habe die Liste immer im folgenden Snippet verwendet, obwohl ich zugebe, dass sie nur Teil einer Beispiel-Nginx-Conf-Datei war, die ich vor einigen Jahren als Beispiel verwendet habe, als ich anfing, mit Nginx zu arbeiten.
Sollte ich auch einschließen application/json
?
http {
include mime.types;
default_type application/octet-stream;
gzip_types text/plain text/xml text/css
text/comma-separated-values
text/javascript application/x-javascript
application/atom+xml;
# text/html is included in the gzip list by default
# ...
}
Die Standard-MIME gibt ein /etc/nginx/mime.types
.
types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/x-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/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
image/svg+xml svg svgz;
image/webp webp;
application/java-archive jar war ear;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.ms-excel xls;
application/vnd.ms-powerpoint ppt;
application/vnd.wap.wmlc wmlc;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
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/zip zip;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream eot;
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/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;
}
Antworten:
Die umfassendste, modernste und kompatibelste Konfiguration finden Sie im GitHub-Repository von h5bp .
application/x-javascript
ist alt und wird für die Internet Explorer-Unterstützung nicht benötigt.Ich werde die Konfigurationen hier nicht einfügen, da einige Leute sie möglicherweise kopieren / einfügen. Stattdessen verlinke ich direkt zu den Masterdateien im h5bp-Repository. Dies stellt sicher, dass die Benutzer immer die neueste Version kopieren / einfügen:
mime.types
gzip_types
Im Allgemeinen ist es ratsam, nur die MIME / gzip-Typen festzulegen, die Sie wirklich bedienen möchten. Dies beschleunigt Nginx, da es sehr schnell zurückgreifen kann und die Liste kurz ist.
quelle
application/x-font-woff
aber H5BP Anwendungenapplication/font-woff
.application/font-woff
.Ich habe eine Liste zusammengestellt, die kürzer ist und meiner Meinung nach besser für die heutigen Standards geeignet ist:
Ich habe bewusst alle Office-bezogenen Typen ausgelassen.
quelle