Comparte los recursos de un proyecto en varios sitios

Puedes configurar uno o más sitios de Firebase Hosting en un solo proyecto de Firebase. Cada sitio aloja su propia colección de recursos estáticos, tiene su propia configuración de hosting y puede tener uno o más dominios asociados. Dado que todos los sitios están en el mismo proyecto de Firebase, pueden acceder a los otros recursos de Firebase del proyecto.

Si defines varios sitios de Hosting en el mismo proyecto de Firebase, podrás compartir recursos de la plataforma con más facilidad entre apps y sitios relacionados. Por ejemplo, si configuras tu blog, el panel de administración y la app pública como sitios en el mismo proyecto de Firebase, podrán compartir la misma base de datos de usuarios de Firebase Auth y tener dominios únicos o recursos estáticos.

Agrega sitios adicionales

Agrega sitios adicionales a un proyecto de Firebase directamente desde tu página de Firebase Hosting. También puedes agregar dominios personalizados a cada sitio para que entreguen el mismo contenido y configuración en varias URL.

Borra un sitio secundario

Borra sitios no deseados directamente desde la página de Firebase Hosting. Ten en cuenta que no puedes borrar el sitio predeterminado, que tiene el mismo nombre del proyecto de Firebase.

Configura objetivos de implementación para tus sitios

Si tienes varios sitios y ejecutas comandos de implementación de Firebase CLI, la CLI necesita un medio para dar a conocer la configuración que debe implementarse a cada sitio. Con los objetivos de implementación, puedes identificar de manera única un sitio específico con su parámetro target-name en tu archivo de configuración firebase.json y en los comandos de Firebase CLI.

Para crear un objetivo de implementación y aplicar un parámetro target-name a un sitio de Hosting, ejecuta el siguiente comando de CLI desde la raíz del directorio de tu proyecto:

firebase target:apply hosting target-name resource-name

Los parámetros correspondientes son los siguientes:

  • target-name: identificador único, que tú mismo definiste, del sitio de Hosting en el que realizas la implementación

  • resource-name: nombre del sitio de Hosting como aparece en tu proyecto de Firebase

Por ejemplo, si creaste dos sitios (myapp-blog y myapp-app) en el proyecto de Firebase, puedes aplicar un parámetro target-name único a cada sitio (blog y app, respectivamente) mediante la ejecución de los siguientes comandos:

firebase target:apply hosting blog myapp-blog
firebase target:apply hosting app myapp-app

La configuración de los objetivos de implementación se almacena en el archivo .firebaserc del directorio del proyecto, por lo que solo debes configurar los objetivos de implementación una vez por proyecto.

Define la configuración de hosting para cada sitio

Usa el parámetro target-name de un sitio cuando definas su configuración de hosting en el archivo firebase.json.

  • Si tu archivo firebase.json define la configuración para varios sitios, usa un formato de matriz como se indica a continuación:

    {
      "hosting": [ {
          "target": "blog", // "blog" is the applied target-name for the Hosting site myapp-blog.
          "public": "blog/dist"
        },
        {
          "target": "app", // "app" is the applied target-name for the Hosting site myapp-app.
          "public": "app/dist",
          "rewrites": [...] // You can define specific hosting configurations for each site.
        }
      ]
    }
    
  • Si tu archivo firebase.json define la configuración de un solo sitio, no es necesario usar un formato de matriz, como se indica a continuación:

    {
      "hosting": {
          "target": "blog",
          "public": "dist"
          "rewrites": [...]
      }
    }
    

Implementa en tus sitios o ejecuta de forma local

Ejecuta cualquiera de los siguientes comandos desde la raíz del directorio de tu proyecto:

Comando Descripción
firebase deploy Crea una liberación de todos los recursos del directorio del proyecto que pueden implementarse.
firebase deploy --only hosting:target-name Crea una liberación solo de los recursos del objetivo de Hosting especificado.
firebase serve Ejecuta tu proyecto de Firebase de manera local.
firebase serve --only hosting:target-name Ejecuta de manera local solo los recursos del objetivo de Hosting especificado.

Enviar comentarios sobre…

¿Necesitas ayuda? Visita nuestra página de asistencia.