gzip_types

gzip_types 指令指定应使用 gzip 压缩的 MIME 类型。 — NGINX HTTP Core

gzip_types
httpserverlocation
语法gzip_types type [type ...];
默认值text/html text/css text/xml application/javascript application/json;
上下文http, server, location
模块NGINX HTTP Core
参数1+

说明

NGINX 中的 `gzip_types` 指令用于定义一个 MIME 类型列表,当启用 `gzip` 模块时这些类型应被压缩。该指令可以更精细地控制哪些文件类型会被压缩,从而优化特定内容类型的传输,同时可能排除那些压缩后不会显著减小体积的类型。该指令接受一个或多个 MIME 类型作为参数。通过指定这些类型,可以确保只有预期的内容类型(例如文本文件)会被压缩,从而提升加载速度并节省带宽,同时避免对非相关文件类型进行不必要的处理。 当启用 gzip 模块时,它会将响应的 `Content-Type` 头与 `gzip_types` 中指定的 MIME 类型进行检查。如果匹配,则在发送到客户端之前对响应进行压缩。这一功能对基于文本的内容(例如 HTML、CSS、JavaScript 和 XML)尤其重要,可大幅减小大小,从而加快页面加载。然而,为了实现最佳效率,关键是列出所有希望压缩的相关 MIME 类型。此外,应注意理解特定文件格式的行为;例如,某些二进制格式可能已经被压缩,额外的 gzip 压缩可能效果不佳甚至适得其反。

配置示例

gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml;

为了有效使用,请确保在 NGINX 配置中启用 gzip 模块。

如果某个 MIME 类型未列在 gzip_types 中,即使启用了 gzip,也不会被压缩。

对某些文件类型(例如图像或视频)进行过度压缩可能带来微乎其微的体积节省。