Asigna dominios personalizados

App Engine permite entregar las aplicaciones mediante un dominio personalizado, como example.com, en lugar de la dirección predeterminada appspot.com. Puedes crear un mapeo de dominio para tu aplicación de App Engine a fin de que utilice un dominio personalizado.

De manera predeterminada, cuando mapeas el dominio personalizado a la aplicación, App Engine emite un certificado administrado de SSL para las conexiones HTTPS. Para obtener más información sobre cómo usar SSL con el dominio personalizado e, incluso, cómo usar tus propios certificados SSL, consulta cómo proteger los dominios personalizados con SSL.

Utiliza esta página para aprender cómo crear un mapeo de dominio para la aplicación que se ejecuta en App Engine.

El uso de dominios personalizados en las siguientes regiones podría agregar una latencia evidente a las respuestas:

  • us-west2
  • us-east4
  • northamerica-northeast1
  • southamerica-east1
  • europe-west2
  • europe-west3
  • asia-south1
  • asia-northeast1
  • australia-southeast1

Antes de comenzar

  1. Compra un dominio nuevo, a menos que ya tengas uno que desees usar. Puedes utilizar cualquier registrador de nombre de dominio, incluido Google Domains.

  2. Si decides utilizar los comandos de la herramienta gcloud:

    1. Instala e inicializa el SDK de Cloud:

      Descargar e instalar

  3. Si eliges usar la API de Administrador, consulta la información sobre los requisitos previos en la sección Accede a la API de Administrador.

Agrega un dominio personalizado a tu aplicación

Para agregar un dominio personalizado a la aplicación de App Engine:

  1. Verifica que seas el propietario del dominio a través de Webmaster Central

    Console
    1. En Google Cloud Platform Console, ve a App Engine > Configuración > Dominios personalizados:

      Ir a la página de dominios personalizados

    2. Haz clic en Agregar un dominio personalizado para visualizar el formulario Agregar un dominio personalizado nuevo:

      Agregar un dominio personalizado

    3. En la sección Selecciona el dominio que deseas utilizar, ingresa el nombre del dominio, por ejemplo, example.com, y, luego, haz clic en Continuar a fin de abrir una pestaña nueva en la página Webmaster Central.
      1. Utiliza la Central para webmasters para verificar la propiedad del dominio.

        Importante: Verificar la propiedad del dominio mediante el uso de un registro CNAME es la opción preferida para App Engine. Si decides usar un registro TXT, no configures el DNS del dominio con un registro CNAME porque el registro CNAME anula el registro TXT y provoca que el dominio aparezca como no verificado.

        Si los métodos de verificación para tu dominio no ofrecen la opción de registro CNAME, puedes seleccionar Otro como proveedor de dominio y, luego, elegir Agregar un registro CNAME:

        1. Haz clic en Métodos alternativos y, a continuación, Proveedor del nombre del dominio.
        2. En el menú, selecciona Otro.
        3. En la sección Con problemas, haz clic en Agregar un registro CNAME y, a continuación, sigue las instrucciones para verificar la propiedad del dominio.

          Recuerda: Establecer tu CNAME en el registrador de dominios puede tardar un poco.

      2. Regresa al formulario Agregar un dominio personalizado nuevo en GCP Console.
    gcloud
    1. Ejecuta el siguiente comando de gcloud domains para abrir la página de Webmaster Central:

      gcloud domains verify DOMAIN

      donde DOMAIN es el dominio cuya propiedad deseas verificar.

      Ejemplo:

      gcloud domains verify example.com
    2. Utiliza Webmaster Central para verificar la propiedad del dominio.

      Importante: Verificar la propiedad del dominio mediante el uso de un registro CNAME es la opción preferida para App Engine. Si decides usar un registro TXT, no configures el DNS del dominio con un registro CNAME porque el registro CNAME anula el registro TXT y provoca que el dominio aparezca como no verificado.

      Si los métodos de verificación para tu dominio no ofrecen la opción de registro CNAME, puedes seleccionar Otro como proveedor de dominio y, luego, elegir Agregar un registro CNAME:

      1. Haz clic en Métodos alternativos y, a continuación, Proveedor del nombre del dominio.
      2. En el menú, selecciona Otro.
      3. En la sección Con problemas, haz clic en Agregar un registro CNAME y, a continuación, sigue las instrucciones para verificar la propiedad del dominio.

        Recuerda: Establecer tu CNAME en el registrador de dominios puede tardar un poco.

      Ejemplo
      Para agregar el siguiente registro CNAME a la configuración del DNS del dominio:
      CNAME Label / Host: a1b2c3d4e5.example.com.
      CNAME Destination / Target: gv-abcdefghijk.dv.googlehosted.com
      Mapea los valores Label / Host y Destination / Target a los campos correspondientes de la configuración del DNS del dominio. Por ejemplo, en Google Domains, configura CNAME de la siguiente manera:
      NOMBRETIPOTTLDATOS
      a1b2c3d4e5CNAME1 hgv-abcdefghijk.dv.googlehosted.com.

      Para obtener más información sobre cómo agregar un registro CNAME, incluidas las instrucciones específicas del dominio, consulta la página de asistencia.

  2. Asegúrate de que el dominio esté verificado; de lo contrario, no podrás proceder con los pasos siguientes. Ten en cuenta que se mostrarán solo los dominios verificados.

    Console

    Si el dominio aún no aparece en la lista, haz clic en Actualizar dominios.

    gcloud

    Ejecuta el siguiente comando de gcloud domains para enumerar tus dominios verificados:

    gcloud domains list-user-verified
    API

    Para ver una lista de los dominios verificados de manera programática, consulta el método apps.authorizedDomains.list en la API de administrador.

  3. Si necesitas delegar la propiedad del dominio a otros usuarios o cuentas de servicio, puedes agregar permisos a través de la página de Webmaster Central:

    1. Abre la siguiente dirección en el navegador web:

      https://www.google.com/webmasters/verification/home

    2. En Propiedades, haz clic en el dominio para el que deseas agregar un usuario o cuenta de servicio.

    3. Desplázate hacia abajo a la lista de Propietarios verificados, haz clic en Agregar un propietario y, a continuación, ingresa la dirección de correo electrónico de una Cuenta de Google o el ID de una cuenta de servicio

      Para ver una lista de las cuentas de servicio, abre la página Cuentas de servicio en GCP Console:

      Ir a la página Cuentas de servicio

  4. Después de que verifiques la propiedad del dominio, puedes mapear ese dominio a la aplicación de App Engine:

    Console

    Continúa con el siguiente paso del formulario Agregar un dominio personalizado nuevo para seleccionar el dominio que deseas mapear a la aplicación de App Engine:

    1. Especifica el dominio y los subdominios que deseas mapear. El dominio simple y el subdominio www se propagan previamente en el formulario.
      • Un dominio simple, como example.com, se mapea a http://example.com.
      • Un subdominio, como www, se mapea a http://www.example.com.
    2. Haz clic en Guardar mapeos para crear el mapeo deseado.
    3. En el paso final del formulario Agregar un dominio personalizado nuevo, ten en cuenta los registros de recursos que se muestran, incluido su tipo y nombre canónico (CNAME), ya que debes agregar estos detalles a la configuración de DNS de tu dominio.

      En el ejemplo que figura a continuación, CNAME es uno de los tipos enumerados, y ghs.googlehosted.com es su nombre canónico.

      Agregar un dominio personalizado
    gcloud

    Ejecuta el siguiente comando de gcloud app domain-mappings para asignar el dominio a la aplicación de App Engine:

    gcloud app domain-mappings create DOMAIN
    • donde DOMAIN es el dominio que quieres asignar a tu aplicación de App Engine, como *.example.com.
    • Si ves un error, intenta poner el domino entre comillas, como '*.example.com'.

      Ejemplo:

      gcloud app domain-mappings create '*.example.com'
    • Ten en cuenta los registros de recursos que se muestran, incluidos su tipo y nombre canónico (CNAME), ya que debes agregar estos detalles a la configuración de DNS del dominio.
    API

    Para asignar el dominio a la aplicación de App Engine de manera programática, consulta el método app.domainMappings.create en la API de Administrador.

    Después de que asignas el dominio a la aplicación de App Engine, utiliza el método apps.domainMappings.list para ver una lista de los registros de recursos.

  5. Agrega los registros de recursos que recibes para la configuración de DNS del Registrador de dominios:

    1. Accede a tu cuenta en el registrador de dominios y, a continuación, abre la página de la configuración de DNS.

    2. Encuentra la sección de registros del host de la página de configuración de dominio y, a continuación, agrega cada uno de los registros de recursos que recibiste cuando mapeaste el dominio a la aplicación de App Engine.

      Por lo general, agregas el nombre del host junto con el nombre canónico como la dirección. Por ejemplo, si registraste Google Domain, uno de los registros que agregas a la configuración de DNS es el nombre del host www junto con la dirección ghs.googlehosted.com. Para especificar un dominio simple, entonces usarás @ con la dirección ghs.googlehosted.com.

      Si estás realizando una migración desde otro proveedor, asegúrate de que todos los registros DNS se dirijan a la aplicación de App Engine.

      Para obtener más información sobre la asignación de tu dominio, consulta las siguientes secciones: Usa subdominios y Asignación de comodines.

    3. Guarda los cambios en la página de la configuración de DNS de la cuenta del dominio. Estos cambios pueden tardar en efectuarse.

  6. Para comprobar que la configuración funciona correctamente, explora la aplicación a través de la URL nueva del dominio, como www.example.com.

Cómo usar subdominios

Si configuras un mapeo de subdominio comodín para el dominio personalizado, la aplicación entregará solicitudes para cualquier subdominio coincidente.

  • Si el usuario explora un dominio que coincide con el nombre de la versión de la aplicación o el nombre del servidor, la aplicación entregará esa versión.
  • Si el usuario explora un dominio que coincide con el nombre de servicio, la aplicación entregará ese servicio.
  • Hay un límite de 20 certificados SSL administrados por semana para cada dominio base. Si te topas con este límite, App Engine seguirá tratando de emitir los certificados administrados hasta que se hayan entregado todas las solicitudes.

Mapeos de comodines

Puedes utilizar comodines para mapear subdominios en cualquier nivel, a partir de los subdominios de tercer nivel. Por ejemplo, si el dominio es example.com y escribes texto en el campo de dirección web:

  • Si ingresas *.example.com, se mapean todos los subdominios de example.com a la aplicación.
  • Si ingresas *.private.example.com, se mapean todos los subdominios de private.example.com a la aplicación.
  • Si ingresas *.nichol.sharks.nhl.example.com, se mapean todos los subdominios de nichol.sharks.nhl.example.com a la aplicación.
  • Si ingresas *.excogitate.system.example.com, se mapean todos los subdominios de excogitate.system.example.com a la aplicación.

Puedes usar asignaciones de comodines con servicios en App Engine usando el archivo dispatch.yaml para definir el enrutamiento de la solicitud a servicios específicos.

Si usas G Suite con otros subdominios en tu dominio, como sites y mail, esas asignaciones tienen mayor prioridad y se buscan coincidencias primero, antes de que se asignen comodines. Además, si tienes otras aplicaciones de App Engine mapeadas a otros subdominios, esos mapeos también tienen mayor prioridad que en el caso de cualquier mapeo de comodín.

Es posible que algunos proveedores de DNS no funcionen con los mapeos de subdominios de comodines. En concreto, un proveedor de DNS debe permitir comodines en entradas del host CNAME.

Las reglas de enrutamiento de comodines se aplican a las URL que contienen componentes para los servicios, las versiones y las instancias, de acuerdo con las reglas de enrutamiento de servicios de App Engine.

Pasos siguientes

Protege tus dominios personalizados con SSL.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación del entorno estándar de App Engine para Node.js