[Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-21 21:48:57
This commit is contained in:
parent
fab5bdae51
commit
7e0226d506
|
|
@ -1,20 +1,21 @@
|
|||
# =========================================================================================
|
||||
# ARQUIVO: /etc/nginx/sites-available/unifi.itguys.com.br.conf
|
||||
# AUTOR: Gemini (Especialista NGINX) - VERSÃO 5 (SOLUÇÃO DEFINITIVA)
|
||||
# AUTOR: Gemini (Especialista NGINX) - VERSÃO 6 (OTIMIZADA COM CACHE)
|
||||
# DATA: 21/09/2025
|
||||
#
|
||||
# DESCRIÇÃO:
|
||||
# Configuração final ajustada para corrigir o erro "403 Forbidden" em chamadas de API,
|
||||
# que impedia o funcionamento correto da interface ao trocar de site.
|
||||
# Configuração otimizada com cache para arquivos estáticos, visando melhorar o
|
||||
# desempenho e reduzir a carga no backend do UniFi Controller.
|
||||
#
|
||||
# MELHORIAS DESTA VERSÃO:
|
||||
# - CORREÇÃO (Erro 403 Forbidden): Adicionados os cabeçalhos 'Origin' e 'Referer'
|
||||
# no proxy_pass. O backend do UniFi usa esses headers como uma medida de segurança
|
||||
# CSRF. Sem eles, requisições que modificam dados (como PUT para /api/self)
|
||||
# são rejeitadas. Com essa mudança, o NGINX garante que o backend confie
|
||||
# nas requisições vindas do proxy. ESTA É A MUDANÇA CRUCIAL.
|
||||
# - ESTRUTURA: Mantida a separação de 'location' para Web e WebSockets, que é a
|
||||
# prática mais robusta e já se provou funcional para as conexões em tempo real.
|
||||
# - OTIMIZAÇÃO (CACHE): Foram adicionados blocos 'location' específicos para
|
||||
# arquivos estáticos (.js, .css, imagens, fontes).
|
||||
# - ESTRATÉGIA DE CACHE:
|
||||
# - Assets com hash no nome (ex: app.a1b2c3d4.js) são considerados imutáveis
|
||||
# e recebem um cache agressivo de longa duração no navegador.
|
||||
# - Assets comuns recebem um cache padrão.
|
||||
# - MANUTENÇÃO: A lógica funcional da API e dos WebSockets permanece intacta,
|
||||
# garantindo que a estabilidade alcançada seja mantida.
|
||||
#
|
||||
# =========================================================================================
|
||||
|
||||
|
|
@ -64,7 +65,24 @@ server {
|
|||
proxy_ssl_verify off;
|
||||
include /etc/nginx/snippets/proxy_params.conf;
|
||||
|
||||
# --- ROTA PARA A APLICAÇÃO ---
|
||||
# --- OTIMIZAÇÃO DE CACHE PARA ASSETS ESTÁTICOS ---
|
||||
|
||||
# Bloco para assets imutáveis (com hash no nome).
|
||||
# Aplica um cache de longa duração no navegador.
|
||||
location ~* \.[a-z0-9]{8,}\.(css|js)$ {
|
||||
include /etc/nginx/snippets/cache_immutable_static.conf;
|
||||
proxy_pass https://unifi_backend_web;
|
||||
}
|
||||
|
||||
# Bloco para outros assets estáticos comuns.
|
||||
# Aplica um cache padrão.
|
||||
location ~* \.(?:css|js|jpe?g|png|gif|ico|svg|webp|avif|eot|ttf|woff|woff2|mp4|webm)$ {
|
||||
include /etc/nginx/snippets/cache_static_assets.conf;
|
||||
proxy_pass https://unifi_backend_web;
|
||||
}
|
||||
|
||||
# --- ROTA PARA A APLICAÇÃO (SEM CACHE) ---
|
||||
# Captura a página principal e todas as chamadas de API.
|
||||
location / {
|
||||
proxy_pass https://unifi_backend_web;
|
||||
|
||||
|
|
@ -73,14 +91,11 @@ server {
|
|||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# !! CORREÇÃO PARA ERRO 403 !!
|
||||
# Força os headers de Origin e Referer para passar na validação CSRF do UniFi.
|
||||
proxy_set_header Origin ""; # Alguns cenários exigem um Origin vazio
|
||||
proxy_set_header Origin "";
|
||||
proxy_set_header Referer $scheme://$host/;
|
||||
}
|
||||
|
||||
# --- ROTA DEDICADA PARA WEBSOCKETS ---
|
||||
# --- ROTA DEDICADA PARA WEBSOCKETS (SEM CACHE) ---
|
||||
location /wss/ {
|
||||
proxy_pass https://unifi_backend_web;
|
||||
|
||||
|
|
@ -97,7 +112,6 @@ server {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
# ==============================================================================
|
||||
# BLOCO 3: Servidor para o "Inform" dos Dispositivos (HTTP na porta 8080)
|
||||
# ==============================================================================
|
||||
|
|
|
|||
Loading…
Reference in New Issue