为尽可能减少服务器压力,除了使用缓存外我们还可以通过Gzip压缩来减小网站静态文件的大小以提升网页加载速度。
其实目前大部分的服务器环境是默认开启Gzip压缩的,但是这样默认的压缩效果依然不是很理想,即便压缩等级调到5以上,可能是因为Nginx 环境 Gzip 压缩默认输出 MIME 类型很少。所以这里给大家分享一个方法:Nginx环境下优化Gzip压缩对MIME类型的输出。
什么是MIME类型
MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。
MIME(多用途互联网邮件扩展类型)_百度百科
常见的MIME类型
- 超文本标记语言文本 .html,.html text/html
- 普通文本 .txt text/plain
- RTF文本 .rtf application/rtf
- GIF图形 .gif image/gif
- JPEG图形 .jpeg,.jpg image/jpeg
- au声音文件 .au audio/basic
- MIDI音乐文件 mid,.midi audio/midi,audio/x-midi
- RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio
- MPEG文件 .mpg,.mpeg video/mpeg
- AVI文件 .avi video/x-msvideo
- GZIP文件 .gz application/x-gzip
- TAR文件 .tar application/x-tar
Nginx配置修改Gzip压缩规则
以宝塔面板为例,宝塔面板默认的压缩类型为:
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
针对网站中常见的MIME类型,只需在 Nginx 配置文件中优化Gzip规则,在规则中压缩类型替换为以下代码即可。(宝塔在49行位置)。
gzip_types application/atom+xml application/javascript application/json application/rss+xml application/vnd.ms-fontobject application/x-font-ttf application/x-font-opentype application/x-font-truetype application/x-javascript application/x-web-app-manifest+json application/xhtml+xml application/xml font/eot font/opentype font/otf image/svg+xml image/x-icon image/vnd.microsoft.icon text/css text/plain text/javascript text/x-component;
保存并重载 Nginx 配置,再重启下 Nginx 即可。如果有缓存(这里缙哥哥不确定缓存是否有影响,先做了再说),还可以清一波缓存!
原创文章,作者:白天,如若转载请注明出处:Nginx环境下优化Gzip压缩对MIME类型的输出