1.0 KiB
1.0 KiB
Documenter — F-052
Cambio visible
Las imágenes de producto ahora cargan correctamente en:
- Frontend:
http://192.168.18.93:3003/products/<slug> - Storefront:
http://192.168.18.93:3005/products/<slug>
Las nuevas subidas desde el backoffice aparecen sin reiniciar ningún servicio.
Cómo funciona
- El admin sube una imagen vía
/api/upload→ escribe enapps/admin/public/uploads/. - Inmediatamente, el mismo handler copia el archivo a
frontend/public/uploads/ystorefront/public/uploads/. - Los tres apps sirven la imagen con un handler dinámico
/uploads/[filename]/route.tsque lee del disco en cada request. - Al hacer
monolith.sh start|restart,sync_uploads()reconcilia los archivos que estuvieran desincronizados.
Detalle técnico
Next.js en producción cachea el listado de public/ al hacer next build. Sin el handler dinámico, los archivos subidos después devolverían 404 hasta el próximo rebuild. El handler dinámico (readFile en cada request) evita ese problema y replica el patrón del admin.