[Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-15 21:48:37
This commit is contained in:
parent
a6ab8d62f9
commit
518030e4fa
|
|
@ -0,0 +1,96 @@
|
||||||
|
# Ficheiro: /etc/nginx/sites-available/webmail.itguys.com.br.conf
|
||||||
|
#
|
||||||
|
# Configuração de Proxy Reverso com cache HÍBRIDO (público e privado) para Microsoft Exchange.
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# BLOCO HTTP: Redirecionar para HTTPS
|
||||||
|
# ==============================================================================
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name webmail.itguys.com.br;
|
||||||
|
location /.well-known/acme-challenge/ { root /var/www/html; }
|
||||||
|
location / { return 301 https://$host$request_uri; }
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# BLOCO HTTPS: O Coração da nossa Configuração
|
||||||
|
# ==============================================================================
|
||||||
|
server {
|
||||||
|
listen 443 ssl http2;
|
||||||
|
listen [::]:443 ssl http2;
|
||||||
|
server_name webmail.itguys.com.br;
|
||||||
|
|
||||||
|
# Certificados SSL (Geridos pelo Certbot)
|
||||||
|
#ssl_certificate /etc/letsencrypt/live/webmail.itguys.com.br/fullchain.pem;
|
||||||
|
#ssl_certificate_key /etc/letsencrypt/live/webmail.itguys.com.br/privkey.pem;
|
||||||
|
|
||||||
|
# Cabeçalhos de Segurança
|
||||||
|
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
|
||||||
|
|
||||||
|
# Configurações de Log
|
||||||
|
access_log /var/log/nginx/access.log detailed_proxy;
|
||||||
|
error_log /var/log/nginx/error.log;
|
||||||
|
|
||||||
|
# --- LOCALIZAÇÃO PARA O CACHE PRIVADO E DINÂMICO (.aspx, .slab) ---
|
||||||
|
# Esta regra apanha os ficheiros da interface dinâmica do Exchange.
|
||||||
|
location ~* \.(aspx|slab)$ {
|
||||||
|
# Usa a nossa zona de cache dedicada para conteúdo privado.
|
||||||
|
proxy_cache exchange_private_cache;
|
||||||
|
|
||||||
|
# A "CHAVE" PESSOAL DE CADA UTILIZADOR.
|
||||||
|
# Combina a URL com o cookie de sessão para criar uma chave única.
|
||||||
|
# O Nginx extrai o valor do cookie com a variável $cookie_NOME_DO_COOKIE.
|
||||||
|
proxy_cache_key "$scheme$proxy_host$request_uri$cookie_ASP_NET_SessionId";
|
||||||
|
|
||||||
|
# Cacheia por um tempo muito curto: 1 minuto.
|
||||||
|
proxy_cache_valid 200 1m;
|
||||||
|
|
||||||
|
# Ignora cabeçalhos que normalmente impediriam o cache de conteúdo autenticado.
|
||||||
|
proxy_ignore_headers Expires Cache-Control Set-Cookie;
|
||||||
|
# Esconde o cabeçalho Set-Cookie para o cliente quando a resposta vem do cache.
|
||||||
|
proxy_hide_header Set-Cookie;
|
||||||
|
|
||||||
|
# Adiciona um cabeçalho para podermos depurar este cache específico.
|
||||||
|
add_header X-Private-Cache $upstream_cache_status;
|
||||||
|
|
||||||
|
proxy_pass https://172.16.150.150;
|
||||||
|
proxy_ssl_verify off;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
# --- LOCALIZAÇÃO PARA FICHEIROS ESTÁTICOS (CACHE PÚBLICO) ---
|
||||||
|
# Esta regra apanha os ficheiros que são seguros para cachear.
|
||||||
|
location ~* \.(jpg|jpeg|gif|png|webp|svg|css|js|ico|woff2|ttf)$ {
|
||||||
|
# Usa a nossa zona de cache pública.
|
||||||
|
proxy_cache zabbix_cache;
|
||||||
|
add_header X-Public-Cache $upstream_cache_status;
|
||||||
|
proxy_no_cache 0;
|
||||||
|
proxy_cache_bypass 0;
|
||||||
|
proxy_cache_valid 200 60m;
|
||||||
|
expires 24h;
|
||||||
|
|
||||||
|
proxy_pass https://172.16.150.150;
|
||||||
|
proxy_ssl_verify off;
|
||||||
|
}
|
||||||
|
|
||||||
|
# --- LOCALIZAÇÃO PRINCIPAL PARA O RESTO (SEM CACHE) ---
|
||||||
|
# Apanha ActiveSync, MAPI, Autodiscover, etc.
|
||||||
|
location / {
|
||||||
|
proxy_no_cache 1;
|
||||||
|
proxy_cache_bypass 1;
|
||||||
|
|
||||||
|
proxy_pass https://172.16.150.150;
|
||||||
|
proxy_read_timeout 3600s;
|
||||||
|
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
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;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Loading…
Reference in New Issue