[Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-22 13:55:39

This commit is contained in:
srvproxy001.itguys.com.br 2025-09-22 13:55:39 -03:00
parent 5a9b6b1c95
commit d5350e851c
1 changed files with 45 additions and 43 deletions

View File

@ -66,6 +66,24 @@ 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;
}
# Rotas dos editores e websockets.
# Estas precisam que o caminho original seja passado integralmente.
location ~ ^/(op|we|wv|p|x|o)/ {
proxy_pass http://office_backend;
proxy_set_header Host $host;
include /etc/nginx/snippets/websocket_params.conf; # Garante WebSocket para todos
# AJUSTE FINAL: Corrige os caminhos dos recursos (CSS, JS)
proxy_redirect ~^http://(?!172\.16\.253\.101)([^/]+) https://$host;
proxy_redirect default;
}
# ============================================================================== # ==============================================================================
# C. BLOCO HTTPS: Servidor Principal # C. BLOCO HTTPS: Servidor Principal
# ============================================================================== # ==============================================================================
@ -106,70 +124,54 @@ server {
location = /.well-known/caldav { return 301 $scheme://$host/remote.php/dav; } location = /.well-known/caldav { return 301 $scheme://$host/remote.php/dav; }
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# J. ROTAS DO OFFICE ONLINE (NOVO) # J. ROTAS DO OFFICE ONLINE (VERSÃO CORRIGIDA E FINAL)
# Estas rotas capturam as requisições para o Office e as encaminham
# para o backend correto, em vez de irem para o Nextcloud.
# É crucial que elas venham ANTES da rota principal "location /".
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# J.1. Rota de descoberta do serviço Office (discovery) # J.1. Bloqueio da telemetria que causa erros no editor
location = /we/RemoteTelemetry.ashx {
return 204;
}
# J.2. Rota de descoberta do serviço Office (discovery) com correção do XML
location ^~ /hosting/discovery { location ^~ /hosting/discovery {
proxy_pass http://office_backend/hosting/discovery; proxy_pass http://office_backend/hosting/discovery;
proxy_set_header Host $host; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # Corrige as URLs incorretas geradas pelo Office Online no XML
proxy_set_header X-Forwarded-Proto $scheme; sub_filter_once off;
sub_filter_types text/xml;
sub_filter 'https://srvoffice001.itguys.com.br/' 'https://cloud.grupopralog.com.br/';
sub_filter 'https://srvoffice001/' 'https://cloud.grupopralog.com.br/';
sub_filter 'https://172.16.253.101/' 'https://cloud.grupopralog.com.br/';
sub_filter 'http://srvoffice001.itguys.com.br/' 'https://cloud.grupopralog.com.br/';
sub_filter 'http://srvoffice001/' 'https://cloud.grupopralog.com.br/';
} }
# ================================================================== # J.3. Rota WOPI para manipulação de arquivos
# AJUSTE FINAL: Corrige em tempo real as URLs incorretas geradas
# pelo Office Online dentro do arquivo de descoberta (XML).
# ==================================================================
sub_filter_once off;
sub_filter_types text/xml;
sub_filter 'https://srvoffice001.itguys.com.br/' 'https://cloud.grupopralog.com.br/';
sub_filter 'https://srvoffice001/' 'https://cloud.grupopralog.com.br/';
sub_filter 'https://172.16.253.101/' 'https://cloud.grupopralog.com.br/';
sub_filter 'http://srvoffice001.itguys.com.br/' 'https://cloud.grupopralog.com.br/';
sub_filter 'http://srvoffice001/' 'https://cloud.grupopralog.com.br/';
# J.2. Rota WOPI para manipulação de arquivos
location ^~ /hosting/wopi/ { location ^~ /hosting/wopi/ {
proxy_pass http://office_backend; proxy_pass http://office_backend;
proxy_set_header Host $host; 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;
} }
# Rotas dos editores e websockets. # J.4. Rota unificada para editores, recursos e websockets
# Estas precisam que o caminho original seja passado integralmente. location ~ ^/(op|we|wv|p|x|lo|m|o|ocs)/ {
location ~ ^/(op|we|wv|p|x|o)/ { proxy_pass http://office_backend;
proxy_pass http://office_backend; proxy_set_header Host $host;
proxy_set_header Host $host; include /etc/nginx/snippets/websocket_params.conf;
include /etc/nginx/snippets/websocket_params.conf; # Garante WebSocket para todos }
# AJUSTE FINAL: Corrige os caminhos dos recursos (CSS, JS)
proxy_redirect ~^http://(?!172\.16\.253\.101)([^/]+) https://$host;
proxy_redirect default;
}
# --------------------------------------------------------------------------
# H.2. Rota Principal da Aplicação Nextcloud # H.2. Rota Principal da Aplicação Nextcloud
# --------------------------------------------------------------------------
location / { location / {
# ---------------------------------------------------------------------- # G. Tratamento de URLs amigáveis
# G. TRATAMENTO DE URLS AMIGÁVEIS (PRETTY URLS)
# ----------------------------------------------------------------------
rewrite ^\/\.well-known\/(card|cal)dav /remote.php/dav/ permanent; rewrite ^\/\.well-known\/(card|cal)dav /remote.php/dav/ permanent;
rewrite ^(\/remote\/.+)(\/)$ $1 permanent; rewrite ^(\/remote\/.+)(\/)$ $1 permanent;
# Passa a requisição para o backend # Passa a requisição para o backend
proxy_pass http://nextcloud_backend; proxy_pass http://nextcloud_backend;
# ---------------------------------------------------------------------- # F. Cabeçalhos de Proxy
# F. CABEÇALHOS DE PROXY (PROXY HEADERS)
# ----------------------------------------------------------------------
proxy_set_header Host $host; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;