Fix 1430
This commit is contained in:
@@ -4,20 +4,22 @@ server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
|
||||
# Directorio raíz donde están los archivos de la app
|
||||
root /usr/share/nginx/html;
|
||||
index index.html;
|
||||
|
||||
# 1. Manejo explícito para el manifest.json
|
||||
# El '=' hace que sea una coincidencia exacta y de alta prioridad.
|
||||
location = /manifest.json {
|
||||
# Evita que el navegador guarde en caché el manifest, que puede cambiar con cada build.
|
||||
add_header 'Cache-Control' 'no-cache, no-store, must-revalidate';
|
||||
# Intenta servir el archivo. Si no existe, devuelve un 404 real.
|
||||
try_files $uri =404;
|
||||
}
|
||||
|
||||
# 2. Manejo de todas las demás rutas para la SPA
|
||||
# Configuración para servir los archivos estáticos y manejar el enrutamiento de la SPA
|
||||
location / {
|
||||
# Intenta servir el archivo solicitado directamente ($uri),
|
||||
# luego como un directorio ($uri/),
|
||||
# y si no encuentra nada, devuelve el index.html
|
||||
# Esto es crucial para que el enrutamiento de React funcione.
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# Opcional: optimizaciones para archivos estáticos
|
||||
location ~* \.(?:css|js|jpg|jpeg|gif|png|ico|svg|woff|woff2)$ {
|
||||
expires 1y;
|
||||
add_header Cache-Control "public";
|
||||
}
|
||||
}
|
||||
@@ -1,39 +1,19 @@
|
||||
// frontend/vite.config.ts
|
||||
import { defineConfig } from 'vite'
|
||||
import react from '@vitejs/plugin-react'
|
||||
import path from 'path';
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [react()],
|
||||
build: {
|
||||
// Mantenemos la configuración de librería para generar el UMD
|
||||
lib: {
|
||||
entry: path.resolve(__dirname, 'src/main.tsx'),
|
||||
name: 'EleccionesWidgets',
|
||||
fileName: 'elecciones-widgets', // Vite añadirá .umd.js automáticamente
|
||||
formats: ['umd']
|
||||
},
|
||||
outDir: 'dist',
|
||||
manifest: true, // Le dice a Vite que genere el manifest.json
|
||||
rollupOptions: {
|
||||
// Asegura que el manifest se genere incluso en modo librería
|
||||
output: {
|
||||
assetFileNames: "assets/[name].[hash].[ext]",
|
||||
chunkFileNames: "assets/[name].[hash].js",
|
||||
entryFileNames: "assets/[name].[hash].js"
|
||||
}
|
||||
}
|
||||
manifest: true, // ¡Crucial! Le dice a Vite que genere el manifest.json
|
||||
},
|
||||
server: {
|
||||
proxy: {
|
||||
// Cualquier petición que empiece con /api...
|
||||
'/api': {
|
||||
// ...redirígela a nuestro backend de .NET
|
||||
target: 'http://localhost:5217',
|
||||
// Cambia el origen de la petición para que el backend la acepte
|
||||
target: 'http://localhost:5217', // Ajuste el puerto si es diferente
|
||||
changeOrigin: true,
|
||||
// No necesitamos reescribir la ruta, ya que el backend espera /api/...
|
||||
// rewrite: (path) => path.replace(/^\/api/, '')
|
||||
},
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user