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; | ||
|  |     } | ||
|  | } |