GZip#

Un filtro que comprime las respuestas utilizando el método gzip, lo que permite reducir el tamaño de los datos transmitidos en 2 veces o más.

Advertencia

Cuando se utiliza el protocolo SSL/TLS, las respuestas comprimidas pueden estar sujetas a ataques BREACH.

Ejemplo de configuración#

gzip            on;
gzip_min_length 1000;
gzip_proxied    expired no-cache no-store private auth;
gzip_types      text/plain application/xml;

La variable $gzip_ratio se puede utilizar para registrar la relación de compresión alcanzada.

Directivas#

gzip#

Sintaxis

gzip on | off;

Predeterminado

gzip off;

Contexto

http, server, location, if in location

Habilita o deshabilita la compresión gzip de las respuestas.

gzip_buffers#

Sintaxis

gzip_buffers number size;

Predeterminado

gzip_buffers 32 4k | 16 8k;

Contexto

http, server, location

Establece el número y tamaño de los buffers utilizados para comprimir una respuesta. Por defecto, el tamaño del buffer es igual a una página de memoria. Esto es 4K u 8K, dependiendo de la plataforma.

gzip_comp_level#

Sintaxis

gzip_comp_level level;

Predeterminado

gzip_comp_level 1;

Contexto

http, server, location

Establece el nivel de compresión gzip de una respuesta. Los valores aceptables están en el rango de 1 a 9.

gzip_disable#

Sintaxis

gzip_disable regex ...;

Predeterminado

Contexto

http, server, location

Deshabilita la compresión gzip de las respuestas para solicitudes con campos de cabecera User-Agent que coincidan con cualquiera de las expresiones regulares especificadas.

La máscara especial msie6 corresponde a la expresión regular "MSIE [4-6].", pero funciona más rápido. "MSIE 6.0; ... SV1" está excluido de esta máscara.

gzip_http_version#

Sintaxis

gzip_http_version 1.0 | 1.1;

Predeterminado

gzip_http_version 1.1;

Contexto

http, server, location

Establece la versión mínima de HTTP de una solicitud requerida para comprimir una respuesta.

gzip_min_length#

Sintaxis

gzip_min_length length;

Predeterminado

gzip_min_length 20;

Contexto

http, server, location

Establece la longitud mínima de una respuesta que será comprimida con gzip. La longitud se determina únicamente a partir del campo de cabecera de respuesta Content-Length.

gzip_proxied#

Sintaxis

gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...;

Predeterminado

gzip_proxied off;

Contexto

http, server, location

Habilita o deshabilita la compresión gzip de las respuestas para solicitudes proxy dependiendo de la solicitud y la respuesta. El hecho de que la solicitud sea proxy se determina por la presencia del campo de cabecera de solicitud Via. La directiva acepta múltiples parámetros:

off

deshabilita la compresión para todas las solicitudes proxy, ignorando otros parámetros;

expired

habilita la compresión si una cabecera de respuesta incluye el campo Expires con un valor que deshabilita el almacenamiento en caché;

no-cache

habilita la compresión si una cabecera de respuesta incluye el campo Cache-Control con el parámetro "no-cache";

no-store

habilita la compresión si una cabecera de respuesta incluye el campo Cache-Control con el parámetro "no-store";

private

habilita la compresión si una cabecera de respuesta incluye el campo Cache-Control con el parámetro "private";

no_last_modified

habilita la compresión si una cabecera de respuesta no incluye el campo Last-Modified;

no_etag

habilita la compresión si una cabecera de respuesta no incluye el campo ETag;

auth

habilita la compresión si una cabecera de solicitud incluye el campo Authorization;

any

habilita la compresión para todas las solicitudes proxy.

gzip_types#

Sintaxis

gzip_types mime-type ...;

Predeterminado

gzip_types text/html;

Contexto

http, server, location

Habilita la compresión gzip de las respuestas para los tipos MIME especificados además de text/html. El valor especial "*" coincide con cualquier tipo MIME. Las respuestas con el tipo text/html siempre se comprimen.

gzip_vary#

Sintaxis

gzip_vary on | off;

Predeterminado

gzip_vary off;

Contexto

http, server, location

Habilita o deshabilita la inserción del campo de cabecera de respuesta "Vary: Accept-Encoding" si las directivas gzip, gzip_static o gunzip están activas.

Variables integradas#

$gzip_ratio#

relación de compresión alcanzada, calculada como la relación entre los tamaños de respuesta original y comprimido.