Nginx: Como configurar a expiração para 404 respostas?

2

Meu servidor nginx atua como um proxy para outro servidor, que às vezes retorna 404s.
Eu quero que as respostas 404 sejam armazenáveis em cache, assim como 200 respostas.

No entanto, não posso usar expires , porque a documentação afirma que:

expires works only for 200, 204, 301, 302, and 304 responses.

Observe que o armazenamento em cache de respostas não-200 é perfeitamente possível de acordo com a especificação HTTP.

Então, como posso definir uma data de expiração em respostas 404?

    
por Ruben Verborgh 06.03.2014 / 20:39

1 resposta

1

Eu vejo duas opções:

  1. Modifique outro servidor para fornecer cabeçalhos de armazenamento em cache.

  2. Use o módulo headers_more . Ele permite adicionar cabeçalhos a respostas http de erro, mas você terá que recompilar o nginx.

  3. Use o módulo Lua .

Resposta original

É impossível armazenar em cache as páginas de erro no cliente (navegador)

Provavelmente você deseja armazenar em cache a resposta de outro servidor e isso é possível com a diretiva proxy_cache . Veja também a diretiva proxy_cache_valid .

    
por 06.03.2014 / 21:46