Como mapear domínios personalizados

É possível usar um domínio personalizado em vez do endereço padrão fornecido pelo App Engine para o aplicativo.

Para usar um domínio personalizado, mapeie-o para o aplicativo e atualize os registros DNS. É possível mapear um domínio sem "www", como example.com, ou um subdomínio, como subdomain.example.com. Também é possível usar caracteres curinga para associar subdomínios.

Por padrão, quando você associa o domínio a um aplicativo, o App Engine emite um certificado gerenciado de SSL para conexões HTTPS. Para saber mais informações sobre o uso do SSL com domínios personalizados e como usar seus próprios certificados SSL, acesse Como proteger domínios personalizados com SSL.

O uso de domínios personalizados pode adicionar uma latência perceptível às respostas que o App Engine envia aos usuários do aplicativo em algumas regiões. Essas regiões são:

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

Antes de começar

  • Se você não tiver um domínio, compre um. É possível usar qualquer registrador de domínios. Se você usar o Google Domains, o domínio será verificado automaticamente para o App Engine e você não precisará passar pelo processo de verificação de domínio.

  • Se você usar o Cloud Load Balancing e os NEGs sem servidor para rotear o tráfego para seu aplicativo do App Engine, recomendamos mapear o domínio personalizado para o balanceador de carga, em vez de diretamente para seu aplicativo, e usar certificados SSL criados para o balanceador de carga. Isso elimina a necessidade de gerenciar certificados SSL separados para cada aplicativo sem servidor. Além disso, com o Cloud Load Balancing, é possível definir políticas SSL que controlam os recursos SSL que seu balanceador de carga negocia com os clientes. Para mais informações, consulte as seguintes páginas:

    Observe a limitação a seguir:

    • Recomendamos que você use controles de entrada para que seu aplicativo receba apenas solicitações enviadas do balanceador de carga (e da VPC, se você usá-la). Caso contrário, os usuários poderão usar o URL do App Engine do aplicativo para ignorar o balanceador de carga, as políticas de segurança do Google Cloud Armor, os certificados SSL e as chaves privadas transmitidas pelo balanceador de carga.

Como mapear um domínio personalizado para o aplicativo

  1. No Console do Google Cloud, acesse a guia Domínios personalizados da página Configurações do App Engine.

    Acessar a página "Domínios personalizados"

  2. Clique em Adicionar um domínio personalizado.

  3. Se o domínio já tiver sido verificado, ele aparecerá na seção Selecione o domínio que você quer usar. Selecione o domínio no menu suspenso e clique em Continuar.

    Se você ainda não verificou o domínio, faça o seguinte:

    1. Selecione Verificar um novo domínio no menu suspenso.
    2. Digite o nome de domínio sem "www" (como "example.com") e clique em Verificar.

      Mesmo que você queira mapear apenas um subdomínio, como "www.example.com", insira o nome do domínio sem "www" para verificar a propriedade.

    3. Insira as informações na janela da Central do webmaster exibida. Saiba como usar a Central do webmaster na ajuda da Central do webmaster.

    4. Depois de concluir as etapas na Central do webmaster, retorne à página Adicionar um novo domínio personalizado no Console do Google Cloud.

  4. Na seção Aponte seu domínio para [project-ID], especifique o domínio e os subdomínios que você quer mapear.

    Recomendamos mapear o domínio sem "www" e o subdomínio www. É possível adicionar mais subdomínios, se necessário.

    Depois de adicionar todos os mapeamentos pretendidos, clique em Salvar mapeamentos.

  5. Clique em Continuar para ver os registros DNS do domínio.

    É possível recuperar esses registros a qualquer momento na guia Domínios personalizados da página Configurações do App Engine.

  6. Faça login no site do registrador de domínios e atualize seus registros DNS com os registros exibidos na etapa anterior.

Como atualizar registros DNS no registrador de domínios

Depois de mapear o serviço para um domínio personalizado no App Engine, você precisará atualizar os registros DNS no registrador de domínios. Por conveniência, o App Engine gera e exibe os registros DNS que você precisa inserir.

  1. Recupere as informações do registro DNS para os mapeamentos de domínio:

    No Console do Google Cloud, acesse a guia Domínios personalizados da página Configurações do App Engine. A página lista os registros DNS de todos os domínios que você mapeou para o aplicativo.

  2. Faça login na sua conta no registrador de domínios e abra a página de configuração do DNS.

  3. Localize a seção de registros do host da página de configuração do domínio e adicione cada um dos registros DNS recuperados quando você mapeou o domínio para o aplicativo.

    Insira as seguintes informações nos campos de registro:

    • Tipo de registro: insira o tipo de registro exibido no registro DNS criado pelo Google para você (A, AAAA ou CNAME).
    • Nome do registro:
      • Nos registros A ou AAAA, insira @.
      • Nos registros CNAME, insira um nome de domínio de terceiro nível. Por exemplo, insira www para mapear o subdomínio www.example.com.
    • TTL: especifique um TTL de acordo com suas necessidades.
    • Dados: insira os dados do registro (rrdata) mostrados no registro DNS que o Google criou para você.
      • Nos registros A ou AAAA, os dados do registro são um endereço IP.
      • Nos registros CNAME, os dados do registro são um nome de domínio.
  4. Salve as alterações na página de configuração do DNS da conta do domínio. Na maioria dos casos, leva apenas alguns minutos para que essas alterações entrem em vigor. No entanto, em alguns casos, pode levar várias horas, dependendo do registrador e do time to live (TTL) (em inglês) de qualquer registro DNS anterior para seu domínio. É possível usar uma ferramenta dig, como esta versão dig on-line, para confirmar se os registros de DNS foram atualizados.

  5. Teste navegando até o serviço no novo URL, por exemplo, https://www.example.com. Pode levar alguns minutos para que o certificado SSL automático seja emitido.

Como delegar propriedade a outros usuários ou contas de serviço do Google Cloud

Se você precisar delegar a propriedade do domínio a outros usuários ou contas de serviço, poderá adicionar a permissão na página da Central do webmaster:

  1. Abra a página de verificação da Central do webmaster.

  2. Em Propriedades, clique no domínio em que você quer adicionar um usuário ou uma conta de serviço.

  3. No final da lista Proprietários verificados, clique em Adicionar um proprietário e insira um endereço de e-mail de uma conta do Google ou um ID de conta de serviço.

    Para ver uma lista das suas contas de serviço, abra a página "Contas de serviço" no Console do Cloud:

    Acessar a página "Contas de serviço"

Como usar subdomínios

Se você configurar um mapeamento de subdomínio com caracteres curinga para o domínio personalizado, o aplicativo exibirá as solicitações de qualquer subdomínio correspondente.

  • Se o usuário pesquisar um domínio que corresponda ao nome da versão do aplicativo ou ao nome do serviço, o aplicativo disponibilizará essa versão.
  • Caso o usuário pesquise um domínio que corresponda a um nome de serviço, esse serviço será disponibilizada pelo aplicativo.
  • Há um limite de 20 certificados SSL gerenciados por semana para cada domínio de base. Quando o limite é alcançado, o App Engine continua tentando emitir certificados gerenciados até que todas as solicitações sejam atendidas.

Mapeamentos com caracteres curinga

Use caracteres curinga para mapear subdomínios em qualquer nível, começando pelos de terceiro nível. Por exemplo, se seu domínio for example.com e você inserir texto no campo de endereço da Web:

  • Inserir *.example.com mapeia todos os subdomínios de example.com para seu aplicativo.
  • Inserir *.private.example.com mapeia todos os subdomínios de private.example.com para seu aplicativo.
  • Inserir *.nichol.sharks.nhl.example.com mapeia todos os subdomínios de nichol.sharks.nhl.example.com para seu aplicativo.
  • Inserir *.excogitate.system.example.com associa todos os subdomínios de excogitate.system.example.com ao seu aplicativo.

É possível utilizar as associações com caracteres curinga com serviços no App Engine. Basta usar o arquivo dispatch.yaml para definir o roteamento de solicitações para serviços específicos.

Ao usar o Google Workspace com outros subdomínios no domínio, como sites e mail, esses mapeamentos terão prioridade mais alta e serão correspondidos antes de qualquer mapeamento com caractere curinga. Além disso, se você tiver outros aplicativos do App Engine mapeados para outros subdomínios, esses mapeamentos também terão prioridade mais alta que qualquer mapeamento com caracteres curinga.

Alguns provedores de DNS podem não funcionar com mapeamento de subdomínio com caractere curinga. Em específico, um provedor de DNS precisa permitir caracteres curinga em entradas de host CNAME.

As regras de roteamento de caracteres curinga se aplicam a URLs que contêm componentes de serviços, versões e instâncias seguindo as regras de roteamento de serviço do App Engine.

A seguir

Como proteger domínios personalizados com SSL.