diff --git a/nginx/sites-available/cloud.grupopralog.com.br.conf b/nginx/sites-available/cloud.grupopralog.com.br.conf index d0a3e18..f7d42d7 100644 --- a/nginx/sites-available/cloud.grupopralog.com.br.conf +++ b/nginx/sites-available/cloud.grupopralog.com.br.conf @@ -159,6 +159,34 @@ server { if ($request_method = 'OPTIONS') { add_header 'Access-Control-Allow-Origin' "$scheme://$http_host"; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, HEAD'; add_header 'Access-Control-Allow-Headers' 'Authorization, Content-Type, Accept, Origin, User-Agent, DNT, Cache-Control, X-Mx-ReqToken, Keep-Alive, X-Requested-With, If-Modified-Since, X-UserType'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Max-Age' 1728000; return 204; } add_header 'Access-Control-Allow-Origin' "$scheme://$http_host" always; add_header 'Access-Control-Allow-Credentials' 'true' always; sub_filter 'srvoffice001.itguys.com.br' 'cloud.grupopralog.com.br'; sub_filter_once off; sub_filter_types text/html text/css text/javascript application/javascript application/json; proxy_set_header Host "srvoffice001.itguys.com.br"; 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_set_header X-Forwarded-Host $host; proxy_set_header Accept-Encoding ""; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } + # ====================================================================== + # NOVO BLOCO: Cache para Avatares + # Este bloco captura especificamente as URLs de avatares. + # ====================================================================== + location /avatar/ { + proxy_pass http://nextcloud_backend; + 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; + + # Aplica o cache do NGINX + proxy_cache nextcloud_cache; + proxy_cache_valid 200 302 1d; + proxy_cache_valid any 1m; + + # Esconde os cabeçalhos de cache do backend (Apache/PHP) + proxy_hide_header "Cache-Control"; + proxy_hide_header "Expires"; + proxy_hide_header "Pragma"; + + # Adiciona nosso cabeçalho de cache de longa duração para o navegador + add_header Cache-Control "public, max-age=31536000, immutable"; + + # Cabeçalho para depuração (verificar se o cache está funcionando) + add_header X-Proxy-Cache $upstream_cache_status; + } + # --- BLOCO OTIMIZADO PARA ATIVOS ESTÁTICOS DO NEXTCLOUD (MODO PROXY) --- location ~ \.(css|js|mjs|svg|gif|png|jpg|jpeg|ico|wasm|woff|woff2|ttf|otf|map)$ { proxy_pass http://nextcloud_backend;