46 lines
1.6 KiB
Nginx Configuration File
46 lines
1.6 KiB
Nginx Configuration File
|
|
# Define un "upstream" que apunta a nuestro servicio de backend.
|
||
|
|
# 'backend' será el nombre del servicio en docker-compose, y 8080 es el puerto
|
||
|
|
# que expusimos en su Dockerfile.
|
||
|
|
upstream backend_api {
|
||
|
|
server backend:8080;
|
||
|
|
}
|
||
|
|
|
||
|
|
server {
|
||
|
|
# Nginx escuchará en el puerto 80 DENTRO del contenedor.
|
||
|
|
listen 80;
|
||
|
|
server_name 192.168.5.128; # Opcional, puedes usar localhost o tu dominio
|
||
|
|
|
||
|
|
# Ubicación raíz: sirve los archivos de la aplicación React.
|
||
|
|
location / {
|
||
|
|
root /usr/share/nginx/html;
|
||
|
|
try_files $uri /index.html; # Clave para Single Page Applications (SPA)
|
||
|
|
}
|
||
|
|
|
||
|
|
# Ubicación para la API REST.
|
||
|
|
# Todas las peticiones a http://.../api/... serán redirigidas al backend.
|
||
|
|
location /api {
|
||
|
|
proxy_pass http://backend_api;
|
||
|
|
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;
|
||
|
|
}
|
||
|
|
|
||
|
|
# ----------- CONFIGURACIÓN CRÍTICA PARA SIGNALR -----------
|
||
|
|
# Ubicación para el Hub de SignalR.
|
||
|
|
location /titularesHub {
|
||
|
|
proxy_pass http://backend_api;
|
||
|
|
|
||
|
|
# Requerido para que la conexión WebSocket funcione
|
||
|
|
proxy_http_version 1.1;
|
||
|
|
proxy_set_header Upgrade $http_upgrade;
|
||
|
|
proxy_set_header Connection "Upgrade";
|
||
|
|
proxy_set_header Host $host;
|
||
|
|
|
||
|
|
# Aumenta el timeout para conexiones de larga duración
|
||
|
|
proxy_read_timeout 90s;
|
||
|
|
|
||
|
|
# Evita que el proxy almacene en caché la negociación de WebSockets
|
||
|
|
proxy_cache_bypass $http_upgrade;
|
||
|
|
}
|
||
|
|
}
|