NgixProxy_Pathfinder/nginx/snippets/cache_static_assets.conf

31 lines
1.4 KiB
Plaintext

# /etc/nginx/snippets/cache_aggressive_static.conf
#
# Snippet de cache agressivo para ficheiros estáticos que raramente mudam.
# AVISO: Só use isto se os seus ficheiros tiverem nomes únicos a cada deploy (técnica de "cache busting").
# --- Configuração do Cache do Nginx ---
# Ativa o cache para esta localização, usando a zona de cache 'static_cache'.
# Garanta que esta zona está definida no seu /etc/nginx/nginx.conf.
proxy_cache static_cache;
# Define que as respostas válidas ficam no cache do Nginx por 30 dias.
proxy_cache_valid 200 301 302 30d;
# Cacheia erros de "Não Encontrado" por um período curto.
proxy_cache_valid 404 1m;
# Em caso de erro no backend, serve uma versão antiga do cache em vez de mostrar um erro.
proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
# Ativa explicitamente o cache para esta localização.
proxy_no_cache 0;
proxy_cache_bypass 0;
# Otimização que impede que múltiplas requisições para o mesmo recurso em falta atinjam o backend.
proxy_cache_lock on;
# --- Configuração do Cache do Cliente (Navegador) ---
# Instrui o NAVEGADOR do cliente a guardar uma cópia por 30 dias e a nunca a revalidar.
# 'immutable' é uma otimização de performance poderosa.
add_header Cache-Control "public, immutable, max-age=2592000";
# Adiciona um cabeçalho de depuração para vermos o status do cache (HIT/MISS/BYPASS).
add_header X-Cache-Status $upstream_cache_status;