GZip#

Um filtro que comprime respostas usando o método gzip, que permite reduzir o tamanho dos dados transmitidos em 2 vezes ou mais.

Aviso

Ao usar o protocolo SSL/TLS, respostas comprimidas podem estar sujeitas a ataques BREACH.

Exemplo de Configuração#

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

A variável $gzip_ratio pode ser usada para registrar a taxa de compressão alcançada.

Diretivas#

gzip#

Sintaxe

gzip on | off;

Padrão

gzip off;

Contexto

http, server, location, if in location

Habilita ou desabilita a compressão gzip das respostas.

gzip_buffers#

Sintaxe

gzip_buffers number size;

Padrão

gzip_buffers 32 4k | 16 8k;

Contexto

http, server, location

Define o número e tamanho dos buffers usados para comprimir uma resposta. Por padrão, o tamanho do buffer é igual a uma página de memória. Isso é 4K ou 8K, dependendo da plataforma.

gzip_comp_level#

Sintaxe

gzip_comp_level level;

Padrão

gzip_comp_level 1;

Contexto

http, server, location

Define o nível de compressão gzip de uma resposta. Valores aceitáveis estão na faixa de 1 a 9.

gzip_disable#

Sintaxe

gzip_disable regex ...;

Padrão

Contexto

http, server, location

Desabilita a compressão gzip das respostas para requisições com campos de cabeçalho User-Agent que correspondam a qualquer uma das expressões regulares especificadas.

A máscara especial msie6 corresponde à expressão regular "MSIE [4-6].", mas funciona mais rapidamente. "MSIE 6.0; ... SV1" é excluído desta máscara.

gzip_http_version#

Sintaxe

gzip_http_version 1.0 | 1.1;

Padrão

gzip_http_version 1.1;

Contexto

http, server, location

Define a versão HTTP mínima de uma requisição necessária para comprimir uma resposta.

gzip_min_length#

Sintaxe

gzip_min_length length;

Padrão

gzip_min_length 20;

Contexto

http, server, location

Define o comprimento mínimo de uma resposta que será comprimida com gzip. O comprimento é determinado apenas pelo campo de cabeçalho de resposta Content-Length.

gzip_proxied#

Sintaxe

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

Padrão

gzip_proxied off;

Contexto

http, server, location

Habilita ou desabilita a compressão gzip das respostas para requisições proxy dependendo da requisição e resposta. O fato de que a requisição é proxy é determinado pela presença do campo de cabeçalho de requisição Via. A diretiva aceita múltiplos parâmetros:

off

desabilita compressão para todas as requisições proxy, ignorando outros parâmetros;

expired

habilita compressão se um cabeçalho de resposta incluir o campo Expires com um valor que desabilita cache;

no-cache

habilita compressão se um cabeçalho de resposta incluir o campo Cache-Control com o parâmetro "no-cache";

no-store

habilita compressão se um cabeçalho de resposta incluir o campo Cache-Control com o parâmetro "no-store";

private

habilita compressão se um cabeçalho de resposta incluir o campo Cache-Control com o parâmetro "private";

no_last_modified

habilita compressão se um cabeçalho de resposta não incluir o campo Last-Modified;

no_etag

habilita compressão se um cabeçalho de resposta não incluir o campo ETag;

auth

habilita compressão se um cabeçalho de requisição incluir o campo Authorization;

any

habilita compressão para todas as requisições proxy.

gzip_types#

Sintaxe

gzip_types mime-type ...;

Padrão

gzip_types text/html;

Contexto

http, server, location

Habilita compressão gzip das respostas para os tipos MIME especificados além de text/html. O valor especial "*" corresponde a qualquer tipo MIME. Respostas com o tipo text/html são sempre comprimidas.

gzip_vary#

Sintaxe

gzip_vary on | off;

Padrão

gzip_vary off;

Contexto

http, server, location

Habilita ou desabilita a inserção do campo de cabeçalho de resposta "Vary: Accept-Encoding" se as diretivas gzip, gzip_static ou gunzip estiverem ativas.

Variáveis Integradas#

$gzip_ratio#

taxa de compressão alcançada, calculada como a razão entre os tamanhos original e comprimido da resposta.