# Configuración de Nginx para el Sistema de Parking ## No se requiere Build Este proyecto **NO requiere build** porque: - Los archivos JavaScript, HTML y CSS se sirven directamente - No hay proceso de compilación (webpack, vite, etc.) - Es una aplicación Node.js/Express que sirve archivos estáticos ## Opción 1: Nginx como Proxy Reverso (Recomendado) ### Configuración 1. **Instalar Nginx** (si no está instalado) 2. **Crear archivo de configuración** en `/etc/nginx/sites-available/parking` (Linux) o en la carpeta de configuración de nginx (Windows): ```nginx server { listen 80; server_name parking.local; # Cambia por tu dominio o IP client_max_body_size 10M; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; 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_cache_bypass $http_upgrade; } location /api/ { proxy_pass http://localhost:3000; proxy_http_version 1.1; 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; } } ``` 3. **Habilitar el sitio** (Linux): ```bash sudo ln -s /etc/nginx/sites-available/parking /etc/nginx/sites-enabled/ sudo nginx -t # Verificar configuración sudo systemctl reload nginx ``` 4. **Iniciar la aplicación Node.js**: ```bash npm start # o npm run dev ``` ### Ventajas - Nginx maneja el tráfico HTTP - Node.js solo procesa las peticiones - Mejor rendimiento y seguridad - Fácil agregar SSL/HTTPS después ## Opción 2: Nginx sirve archivos estáticos + Node.js para API Si prefieres que Nginx sirva los archivos estáticos directamente: 1. **Configurar Nginx** para servir la carpeta `public/`: ```nginx server { listen 80; server_name parking.local; root /ruta/a/PARKING/public; index index.html; location / { try_files $uri $uri/ /index.html; } location /api/ { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` 2. **Modificar la aplicación** para que solo sirva la API (opcional) ## Verificación 1. Asegúrate de que Node.js esté corriendo en el puerto 3000 2. Verifica que nginx esté corriendo 3. Accede a `http://parking.local` (o tu dominio/IP) ## Notas - **No se requiere build**: Los archivos se sirven directamente - **Puerto 3000**: Asegúrate de que Node.js esté corriendo en este puerto (o cambia la configuración) - **SSL/HTTPS**: Puedes agregar certificados SSL después usando Let's Encrypt