# Ficheiro: /etc/nginx/sites-available/katalog.itguys.com.br.conf # # Configuração de Proxy Reverso OTIMIZADA para Snipe-IT. # Esta versão usa snippets, inclui cache para ficheiros estáticos e está restrita à rede interna. # ============================================================================== # BLOCO HTTP: Redirecionar para HTTPS # ============================================================================== server { listen 80; listen [::]:80; server_name katalog.itguys.com.br; add_header Alt-Svc 'h3=":443"; ma=86400'; # Permite a validação do Let's Encrypt, mesmo com a trava de rede na porta 443. location /.well-known/acme-challenge/ { root /var/www/html; } # Redireciona todo o outro tráfego para a versão segura. location / { return 301 https://$host$request_uri; } } # ============================================================================== # BLOCO HTTPS: O Coração da nossa Configuração # ============================================================================== server { listen 443 ssl http2; listen 443 quic reuseport; listen [::]:443 ssl http2; listen [::]:443 quic reuseport; server_name katalog.itguys.com.br; add_header Alt-Svc 'h3=":443"; ma=86400'; # --- Certificados e Segurança SSL --- ssl_certificate /etc/letsencrypt/live/katalog.itguys.com.br/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/katalog.itguys.com.br/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/katalog.itguys.com.br/fullchain.pem; # Inclui o nosso "kit" de segurança SSL com cifras modernas e cabeçalhos. include /etc/nginx/snippets/ssl_params.conf; # --- Políticas de Acesso e Logs --- # A TRAVA DE SEGURANÇA: Restringe o acesso apenas às suas redes internas. include /etc/nginx/snippets/internal_networks.conf; # Bloqueia a indexação por motores de busca. include /etc/nginx/snippets/global_robots.conf; # Usa o nosso formato de log JSON detalhado. access_log /var/log/nginx/access.log detailed_proxy; error_log /var/log/nginx/error.log; # --- ESTRATÉGIA DE CACHE HÍBRIDA --- # Usa a nossa zona de cache pública. proxy_cache zabbix_cache; add_header X-Proxy-Cache $upstream_cache_status; # Regra geral: NÃO cachear nada por defeito. Isto protege todo o conteúdo dinâmico. proxy_no_cache 1; proxy_cache_bypass 1; # --- REGRAS DE ROTEAMENTO (LOCATIONS) --- # 1. Rota para Ficheiros Estáticos (Cache Agressivo) # Apanha a "casca" da aplicação Snipe-IT para acelerar o carregamento. location ~* \.(?:css|js|mjs|svg|gif|png|jpg|jpeg|ico|wasm|woff2?|ttf|eot)$ { include /etc/nginx/snippets/proxy_params.conf; include /etc/nginx/snippets/cache_static_assets.conf; proxy_pass http://10.10.253.112; } # 2. Rota Principal para a Aplicação (SEM CACHE) # Apanha todo o resto do tráfego (páginas, relatórios, APIs, etc.). location / { include /etc/nginx/snippets/proxy_params.conf; proxy_pass http://10.10.253.112; } }