Domínio personalizado no GitHub Pages: DNS, CNAME e HTTPS

Como configurar um domínio personalizado no GitHub Pages: registros DNS para domínio raiz e www, o arquivo CNAME, verificação do domínio e ativação do HTTPS.

Perguntas frequentes

Quais endereços IP uso para o domínio raiz no GitHub Pages?

A documentação do GitHub (conferida em novembro de 2026) lista quatro registros A para o host raiz (@): 185.199.108.153, 185.199.109.153, 185.199.110.153 e 185.199.111.153. Se quiser IPv6 também, adicione quatro registros AAAA: 2606:50c0:8000::153, 2606:50c0:8001::153, 2606:50c0:8002::153 e 2606:50c0:8003::153. O GitHub recomenda manter os registros A junto com os AAAA. Compare com a documentação antes de colar, pois o GitHub pode alterar esses valores.

Preciso de um arquivo CNAME no meu repositório?

Só se você publicar a partir de uma branch. Nesse caso, ao salvar o domínio personalizado em Settings > Pages, o GitHub faz o commit de um arquivo CNAME na raiz da branch de origem automaticamente. Se você publicar com um workflow personalizado do GitHub Actions, o GitHub informa que nenhum arquivo CNAME é criado e que qualquer arquivo existente é ignorado e não é necessário.

Por que a caixa Enforce HTTPS (Forçar HTTPS) está desabilitada?

O GitHub informa que a opção pode levar até 24 horas para ficar disponível depois que você adiciona o domínio. O certificado é emitido automaticamente, então as causas mais comuns para a caixa travada são DNS que ainda não propagou ou registros extras, como registros A, AAAA, ALIAS ou ANAME adicionais no domínio raiz, ou um CNAME em www apontando para outro lugar que não o GitHub. O GitHub também observa que o domínio precisa ter menos de 64 caracteres. Se travar, clique em Remove ao lado do domínio, digite-o novamente e salve de novo.

Devo usar o domínio raiz ou o www?

O GitHub recomenda o www. A documentação diz que subdomínios www são o tipo de domínio personalizado mais estável, pois não são afetados por mudanças nos endereços IP dos servidores do GitHub. Qualquer que seja o que você definir como domínio personalizado, o GitHub redireciona o outro para ele, desde que o DNS de ambos aponte para o GitHub Pages.

Quanto tempo leva para um domínio personalizado do GitHub Pages funcionar?

O GitHub informa que as alterações de DNS podem levar até 24 horas para propagar. Na prática, muitos registros resolvem antes, mas conte com um dia antes de concluir que algo está quebrado.

É seguro usar um registro DNS curinga (wildcard) no GitHub Pages?

O GitHub desaconselha fortemente registros curinga como *.example.com. A documentação diz que eles colocam você em risco imediato de sequestro de domínio, mesmo que você verifique o domínio. Crie registros para os subdomínios específicos que você usa.

Resposta rápida: no seu repositório, vá em Settings > Pages, digite o domínio em Custom domain (Domínio personalizado) e salve. Depois, no seu provedor de DNS, aponte o www para <username>.github.io com um registro CNAME e aponte o domínio sem prefixo (example.com) para o GitHub com quatro registros A. Quando o GitHub terminar de emitir o certificado, marque Enforce HTTPS (Forçar HTTPS). Tudo se resume a uma configuração no repositório e alguns registros DNS. A maior parte dos atrasos vem da propagação do DNS, que, segundo o GitHub, pode levar até 24 horas.

Tudo o que está abaixo foi conferido na documentação oficial do GitHub em novembro de 2026. Os valores de DNS são a parte com maior chance de mudar, então confirme-os na documentação de domínio personalizado do GitHub Pages antes de colar.

Escolha primeiro o tipo de domínio

Onde você quer que os visitantes cheguemDefina como domínio personalizadoRegistros DNS necessáriosObservações
www.example.comwww.example.comCNAME em www para <username>.github.io, mais registros A no domínio raizConfiguração recomendada pelo GitHub. example.com redireciona para o www.
example.comexample.comRegistros A no domínio raiz (ou um único ALIAS/ANAME), mais um CNAME em wwwwww.example.com redireciona para o domínio raiz.
blog.example.comblog.example.comCNAME em blog para <username>.github.ioNão precisa de registros no domínio raiz.

A documentação do GitHub diz que subdomínios www são a escolha mais estável, pois não são afetados por mudanças nos endereços IP dos servidores do GitHub. Se você não tem um bom motivo para usar o domínio sem prefixo, escolha o www. Se ainda está procurando um registrador, nossa comparação de registradores de domínio apresenta as opções, e quanto custa um domínio explica os preços de renovação.

Passo a passo: conectar o domínio

  1. Adicione o domínio no GitHub. Abra seu repositório, clique em Settings e depois em Pages (em "Code, planning, and automation"). Se a aba Settings estiver oculta, procure no menu suspenso "More". Digite seu domínio no campo Custom domain e clique em Save.
  2. Veja o que o GitHub fez no seu repositório. Se você publica a partir de uma branch, o GitHub faz o commit de um arquivo CNAME na raiz dessa branch. Se publica com um workflow personalizado do GitHub Actions, nenhum arquivo CNAME é criado, e qualquer um que já exista é ignorado.
  3. Remova os registros DNS padrão. Se o seu provedor de DNS criou automaticamente um registro de estacionamento ou padrão para o host que você vai usar, apague-o primeiro.
  4. Crie os registros DNS no seu provedor de DNS (veja a próxima seção).
  5. Aguarde a propagação. O GitHub fala em até 24 horas. Você pode acompanhar o progresso pelo terminal com dig www.example.com +noall +answer.
  6. Ative o Enforce HTTPS assim que a opção ficar disponível (veja abaixo).

A ordem importa menos do que você imagina

Você pode criar os registros DNS antes ou depois de salvar o domínio no GitHub. O risco é deixar o DNS apontando para o GitHub Pages enquanto o domínio não está reivindicado por nenhum repositório. O GitHub alerta que configurar o DNS sem adicionar o domínio ao GitHub pode permitir que outra pessoa hospede um site em um dos seus subdomínios. Salve primeiro o domínio no GitHub e só depois faça o DNS.

Os registros DNS

www ou qualquer subdomínio: um CNAME

TipoHostValor
CNAMEwww<username>.github.io

Use seu nome de usuário ou o nome da organização, sem o nome do repositório. O GitHub diz expressamente para não apontar o CNAME para o endereço exclusivo *.pages.github.io exibido nas configurações do repositório.

Domínio raiz: quatro registros A (conferido em novembro de 2026)

TipoHostValor
A@185.199.108.153
A@185.199.109.153
A@185.199.110.153
A@185.199.111.153

IPv6 opcional, se você quiser, como registros AAAA em @:

TipoHostValor
AAAA@2606:50c0:8000::153
AAAA@2606:50c0:8001::153
AAAA@2606:50c0:8002::153
AAAA@2606:50c0:8003::153

O GitHub recomenda adicionar os registros A mesmo que você adicione os AAAA, porque a adoção do IPv6 ainda é desigual. Se o seu provedor de DNS aceita registros ALIAS ou ANAME, você pode usar um único registro apontando para <username>.github.io no lugar dos registros A e AAAA.

Dois erros a evitar:

  • Registros extras no domínio raiz. O GitHub diz que registros A, AAAA, ALIAS ou ANAME adicionais em @, ou um CNAME em www apontando para outro lugar, podem impedir a geração do certificado HTTPS.
  • Apontar um subdomínio para o domínio raiz. O GitHub avisa que isso causa problemas ao forçar o HTTPS e pode impedir que o subdomínio chegue ao seu site. Aponte os subdomínios para <username>.github.io.

Alguns provedores usam @ para o host raiz, e outros pedem que você deixe o campo em branco ou digite o domínio completo. Isso é uma particularidade do provedor, não uma configuração do GitHub.

Ative o HTTPS

O GitHub emite certificados para domínios personalizados por meio do Let's Encrypt. Depois que o DNS resolver corretamente:

  1. Volte para Settings > Pages.
  2. Procure um símbolo de verificação ao lado do seu domínio, que indica que a checagem de DNS passou.
  3. Marque Enforce HTTPS.

O GitHub diz que a opção pode levar até 24 horas para ficar disponível. Se ela não aparecer alguns minutos depois de você salvar, a sugestão do GitHub é clicar em Remove ao lado do domínio personalizado, digitá-lo de novo e clicar em Save outra vez. O domínio também precisa ter menos de 64 caracteres para que o certificado seja criado.

Se a caixa continuar desabilitada, siga esta lista:

  • [ ] O DNS do host resolve para o GitHub (o dig mostra os quatro IPs ou o seu CNAME <username>.github.io)
  • [ ] Não há registros A, AAAA, ALIAS ou ANAME extras no domínio raiz
  • [ ] O CNAME de www aponta para <username>.github.io, e não para o domínio raiz nem para um endereço pages.github.io
  • [ ] O domínio em Settings > Pages é exatamente o mesmo que você digitou no DNS
  • [ ] Você removeu e adicionou o domínio de novo uma vez

Verifique o domínio (altamente recomendado)

A verificação impede que outras contas do GitHub reivindiquem o seu domínio caso o seu site no Pages seja desvinculado. O GitHub lista como possíveis os sequestros de domínio quando você exclui o repositório, quando o seu plano de cobrança sofre downgrade, ou após qualquer alteração que desvincule o domínio enquanto ele continua configurado para o GitHub Pages e não verificado.

  1. Abra as configurações do seu perfil (não do repositório) e depois Pages na barra lateral.
  2. Clique em Add a domain, informe o domínio e confirme.
  3. Crie o registro TXT que o GitHub mostrar. O host será parecido com _github-pages-challenge-USERNAME.example.com.
  4. Confirme que ele está visível com dig _github-pages-challenge-USERNAME.example.com +nostats +nocomments +nocmd TXT.
  5. De volta ao GitHub, use o menu ao lado do domínio, escolha Continue verifying e depois Verify.

O GitHub diz que isso pode ser imediato ou levar até 24 horas. Deixe o registro TXT no lugar depois disso. Evite também registros curinga como *.example.com: o GitHub diz que eles representam risco de sequestro mesmo com o domínio verificado.

Problemas comuns

  • 404 no domínio personalizado, mas o site funciona em github.io. O domínio nunca foi salvo em Settings > Pages, ou o DNS ainda não propagou. Verifique os dois.
  • O domínio volta ao padrão depois de um deploy. Se você publica a partir de uma branch, o arquivo CNAME na branch de origem precisa conter o seu domínio. Um build que apaga a raiz da branch, ou um deploy que omite o arquivo, pode removê-lo. Migrar para um workflow personalizado do Actions torna o arquivo desnecessário.
  • O domínio raiz funciona, o www não (ou o contrário). Os dois hosts precisam de registros. Lembre-se de que o GitHub só redireciona o host par se o DNS dele também apontar para o GitHub Pages.
  • O certificado nunca chega. Siga a lista de verificação acima, procurando primeiro por registros soltos.

Se você prefere não gerenciar o DNS por conta própria

O GitHub Pages é uma boa opção para sites estáticos que você já mantém em um repositório. Se você precisa principalmente colocar um site no ar com o seu próprio domínio, os domínios personalizados da We.Inc guiam você pela mesma etapa de DNS dentro do construtor, e o guia de conexão de domínio cobre isso para qualquer provedor. O plano gratuito da We.Inc permite publicar até três sites a partir de templates prontos; o construtor com IA que cria um site a partir de um prompt começa no plano Starter, por $20 por mês. Você pode se cadastrar aqui.

Comece grátis · Sem cartão de crédito

Umair Ali Sadaqat

Fundador da We.Inc

Umair é o fundador da We.Inc. Ele escreve sobre criação de sites com IA, agências e o negócio de administrar um estúdio web.

Pronto para criar algo incrível?

Junte-se a 15,000+ empresas que usam o We.Inc para lançar, crescer e automatizar, tudo em uma plataforma.

Comece grátis

Sem cartão de crédito · Fale com vendas

Relacionados: Blog

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site