fix(prod): correzione preview script e routing server produzione

- Modificato [package.json](cci:7://file:///home/davide/segnapunti/package.json:0:0-0:0): lo script "preview" ora esegue "node server.js" per abilitare il backend WebSocket.
- Aggiornato [server.js](cci:7://file:///home/davide/segnapunti/server.js:0:0-0:0): impedito al Controller di servire la Display App per default (opzione `index: false`).
- Corretta sintassi rotte: sostituito `*` con regex `/.*/` per compatibilità con Express 5
This commit is contained in:
2026-02-12 14:11:05 +01:00
parent 94a0b0735f
commit 331ab0bbeb
2 changed files with 5 additions and 4 deletions

View File

@@ -6,7 +6,7 @@
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
"build": "vite build", "build": "vite build",
"preview": "vite preview", "preview": "node server.js",
"start": "node server.js", "start": "node server.js",
"serve": "vite build && node server.js" "serve": "vite build && node server.js"
}, },

View File

@@ -24,7 +24,7 @@ const displayApp = express()
displayApp.use(express.static(join(__dirname, 'dist'))) displayApp.use(express.static(join(__dirname, 'dist')))
// Fallback per SPA: restituisce `index.html` per tutte le route. // Fallback per SPA: restituisce `index.html` per tutte le route.
displayApp.get('/{*splat}', (_req, res) => { displayApp.get(/.*/, (_req, res) => {
res.sendFile(join(__dirname, 'dist', 'index.html')) res.sendFile(join(__dirname, 'dist', 'index.html'))
}) })
@@ -56,10 +56,11 @@ displayServer.listen(DISPLAY_PORT, '0.0.0.0', () => {
const controllerApp = express() const controllerApp = express()
// Espone gli stessi file statici della build. // Espone gli stessi file statici della build.
controllerApp.use(express.static(join(__dirname, 'dist'))) // IMPORTANTE: { index: false } impedisce di servire index.html (il display) sulla root.
controllerApp.use(express.static(join(__dirname, 'dist'), { index: false }))
// Fallback: restituisce `controller.html` per tutte le route. // Fallback: restituisce `controller.html` per tutte le route.
controllerApp.get('/{*splat}', (_req, res) => { controllerApp.get(/.*/, (_req, res) => {
res.sendFile(join(__dirname, 'dist', 'controller.html')) res.sendFile(join(__dirname, 'dist', 'controller.html'))
}) })