Potencia tu implementación en Firebase con una configuración precisa de firebase.json. Aquí se explica cómo ajustar public, ignore, la página 404, crear redirects, aplicar rewrites y añadir headers de caché para mejorar el rendimiento. Todo se basa en el flujo real de despliegue con firebase deploy y verificación en la consola de administración.
¿Cómo configurar firebase.json para Firebase Hosting?
Configurar hosting en un archivo JSON implica usar pares atributo–valor dentro del objeto hosting. El único campo obligatorio es public: ahí va la carpeta que se desplegará. Además, ignore impide subir archivos de configuración, archivos ocultos y los node_modules. Al desplegar, se genera una página 404 que puedes personalizar.
Campo public: carpeta que se publica, por ejemplo "public".
Campo ignore: evita subir archivos de config, ocultos y node_modules.
Página 404: aparece cuando una ruta no existe; se puede editar.
Versiones y rollback: se gestionan en la consola de administración.
Un redirect redirige al usuario si la URL coincide con un patrón. Se define con un arreglo de objetos en redirects, cada uno con source, destination y type.
¿Cómo definir source y destination?
source: patrón de URL a capturar, por ejemplo "/post".
destination: adónde redirigir, por ejemplo "/" para volver al dominio.
type: según se explicó, con 301 se hace un redireccionamiento temporal.
Puedes definir varios redirects: agrega más objetos separados por comas.
Aplica cambios con firebase deploy y verifica la nueva versión en la consola.
¿Cómo usar rewrites y headers para control avanzado?
Un rewrite sobreescribe lo que devuelve una ruta y sirve un archivo local. Por ejemplo, enviar siempre index.html para cualquier ruta. Los headers agregan metadatos HTTP, como Cache-Control, para mejorar el rendimiento.
¿Cómo reescribir rutas al index.html?
Objetivo: que cualquier URL muestre el index.html.
Patrón de captura: "/**" para cubrir todo lo que siga al dominio.
Por defecto el navegador guarda por una hora, aquí se sobrescribe a dos horas.
También puedes apuntar a un archivo específico, por ejemplo "index.html".
Despliega y valida la versión actualizada en la consola.
¿Quieres que revisemos un caso de redirects, rewrites o headers para tu proyecto? Cuéntame en los comentarios qué patrón necesitas y lo armamos juntos.