Headers#

Permite adicionar os campos de cabeçalho Expires e Cache-Control, e campos arbitrários, a um cabeçalho de resposta.

Exemplo de Configuração#

expires    24h;
expires    modified +24h;
expires    @24h;
expires    0;
expires    -1;
expires    epoch;
expires    $expires;
add_header Cache-Control private;

Diretivas#

add_header#

Sintaxe

add_header name value [always];

Padrão

Contexto

http, server, location, if in location

Adiciona o campo especificado a um cabeçalho de resposta desde que o código de resposta seja igual a 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307, ou 308. O valor do parâmetro pode conter variáveis.

Pode haver várias diretivas add_header. Essas diretivas são herdadas do nível de configuração anterior se e somente se não houver diretivas add_header definidas no nível atual.

Se o parâmetro always for especificado, o campo de cabeçalho será adicionado independentemente do código de resposta.

add_trailer#

Sintaxe

add_trailer name value [always];

Padrão

Contexto

http, server, location, if in location

Adiciona o campo especificado ao final de uma resposta desde que o código de resposta seja igual a 200, 201, 206, 301, 302, 303, 307, ou 308. O valor do parâmetro pode conter variáveis.

Pode haver várias diretivas add_trailer. Essas diretivas são herdadas do nível de configuração anterior se e somente se não houver diretivas add_trailer definidas no nível atual.

Se o parâmetro always for especificado, o campo especificado será adicionado independentemente do código de resposta.

expires#

Sintaxe

expires [modified] time;

expires epoch | max | off;

Padrão

expires off;

Contexto

http, server, location, if in location

Habilita ou desabilita a adição ou modificação dos campos de cabeçalho de resposta Expires e Cache-Control desde que o código de resposta seja igual a 200, 201, 204, 206, 301, 302, 303, 304, 307, ou 308. O parâmetro pode ser um tempo positivo ou negativo.

O tempo no campo Expires é calculado como a soma do tempo atual e o tempo especificado na diretiva. Se o parâmetro modified for usado, então o tempo é calculado como a soma do tempo de modificação do arquivo e o tempo especificado na diretiva.

Além disso, é possível especificar um horário do dia usando o prefixo "@":

expires @15h30m;

O conteúdo do campo Cache-Control depende do sinal do tempo especificado:

  • tempo é negativo — "Cache-Control: no-cache".

  • tempo é positivo ou zero — "Cache-Control: max-age=`t`", onde t é o tempo especificado na diretiva, em segundos.

epoch

define Expires para o valor "Thu, 01 Jan 1970 00:00:01 GMT", e Cache-Control para "no-cache".

max

define Expires para o valor "Thu, 31 Dec 2037 23:55:55 GMT", e Cache-Control para 10 anos.

off

desabilita a adição ou modificação dos campos de cabeçalho de resposta Expires e Cache-Control.

O último valor de parâmetro pode conter variáveis:

map $sent_http_content_type $expires {
    default         off;
    application/pdf 42d;
    ~image/         max;
}

expires $expires;