Pessoas com permissões de administrador para um repositório podem configurar um domínio personalizado de um site do GitHub Pages.
Sobre a configuração de domínio personalizado
Dica: recomendamos verificar seu domínio personalizado antes de adicioná-lo ao seu repositório, a fim de melhorar a segurança e evitar ataques de aquisição. Para obter mais informações, confira "Verificando seu domínio personalizado para o GitHub Pages".
Lembre-se de adicionar o domínio personalizado ao seu site do GitHub Pages antes de configurar o domínio personalizado com o provedor DNS. Se você configurar o domínio personalizado com o provedor DNS sem adicioná-lo ao GitHub, outra pessoa conseguirá hospedar um site em um dos seus subdomínios.
O comando dig
, que pode ser usado para verificar a configuração correta dos registros DNS, não está incluído no Windows. Para verificar se os registros DNS estão configurados corretamente, você pode usar o comando do PowerShell Resolve-DnsName
ou instalar o BIND.
Observação: as alterações de DNS podem levar até 24 horas para serem propagadas.
Configurando um domínio apex
Para configurar um domínio apex, como example.com
, você precisa configurar um domínio personalizado nas configurações do seu repositório e pelo menos um registro ALIAS
, ANAME
ou A
com seu provedor DNS.
-
Em GitHub, acesse o repositório do seu site.
-
Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.
-
Na seção "Código e automação" da barra lateral, clique em Páginas.
-
Em "Domínio personalizado", digite seu domínio personalizado e clique em Salvar. Se você estiver publicando seu site de um branch, isso criará um commit que adiciona um arquivo
CNAME
diretamente à raiz do branch de origem. Quando você publica seu site com um fluxo de trabalho personalizado GitHub Actions, nenhum arquivoCNAME
é criado. Portanto, você precisa criar um manualmente (contendo apenas uma linha de texto com o domínio personalizado). Para saber mais sobre sua fonte de publicação, confira "Configurar uma fonte de publicação para o site do GitHub Pages". -
Navegue até o provedor DNS e crie um registro
ALIAS
,ANAME
ouA
. Crie também registrosAAAA
para suporte ao IPv6. Se você estiver implementando o suporte ao IPv6, é altamente recomendável usar o registroA
além do registroAAAA
devido à adoção lenta do IPv6 globalmente. Para obter mais informações sobre como criar o registro correto, consulte a documentação do provedor do DNS.-
Para criar um registro
ALIAS
ou um registroANAME
, aponte seu domínio apex para o domínio padrão do seu site. Para obter mais informações sobre o domínio padrão do seu site, confira "Sobre o GitHub Pages". -
Para criar registros
A
, aponte seu domínio apex para os endereços IP do GitHub Pages.185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153
-
Para criar registros
AAAA
, aponte seu domínio apex para os endereços IP do GitHub Pages.2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606:50c0:8003::153
Aviso: é altamente recomendável não usar registros DNS curingas, como
*.example.com
. Esses registros colocam você em risco imediato de aquisições de domínio, mesmo se você verificar o domínio. Por exemplo, verificarexample.com
impedirá que outra pessoa usea.example.com
, mas ela ainda poderá usarb.a.example.com
(que é coberto pelo registro DNS curinga). Para obter mais informações, confira "Verificando seu domínio personalizado para o GitHub Pages". -
-
Abra TerminalTerminalGit Bash.
-
Para confirmar se o registro DNS foi configurado corretamente, use o comando
dig
, substituindo EXAMPLE.COM pelo domínio apex. Confirme que os resultados correspondem aos endereços IP do GitHub Pages acima.-
Para registros
A
:$ dig EXAMPLE.COM +noall +answer -t A > EXAMPLE.COM 3600 IN A 185.199.108.153 > EXAMPLE.COM 3600 IN A 185.199.109.153 > EXAMPLE.COM 3600 IN A 185.199.110.153 > EXAMPLE.COM 3600 IN A 185.199.111.153
-
Para registros
AAAA
:$ dig EXAMPLE.COM +noall +answer -t AAAA > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8000::153 > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8001::153 > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8002::153 > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8003::153
Lembre-se de também marcar seu registro
A
.
-
-
Se você usar um gerador de site estático para criar seu site localmente e efetuar push dos arquivos gerados para o GitHub, efetue pull do commit que adicionou o arquivo CNAME ao repositório local. Para obter mais informações, confira "Solucionar problemas de domínios personalizados e do GitHub Pages".
-
Opcionalmente, para impor a criptografia HTTPS no seu site, selecione Impor HTTPS. Pode levar até 24 horas para que esta opção fique disponível. Para obter mais informações, confira "Proteger o site GitHub Pages com HTTPS".
Como configurar um domínio apex e a variante de subdomínio www
Nota: a configuração de um subdomínio www
ao lado de um domínio apex é recomendada para sites protegidos por HTTPS.
Se você estiver usando um domínio apex como seu domínio personalizado, recomendaremos também configurar um subdomínio www
. Se você configurar os registros corretos para cada tipo de domínio através do seu provedor DNS, GitHub Pages irá automaticamente criar redirecionamentos entre os domínios. Por exemplo, se você configurar www.example.com
como o domínio personalizado para seu site e tiver os registros DNS do GitHub Pages configurados para o apex e os domínios www
, example.com
fará o redirecionamento para www.example.com
. Observe que os redirecionamentos automáticos só se aplicam ao subdomínio www
. Os redirecionamentos automáticos não se aplicam a nenhum outro subdomínio, como blog
. Para obter mais informações, confira "Como configurar um subdomínio".
Navegue até o provedor DNS e crie um registro CNAME
que aponte o subdomínio www
para o domínio padrão de GitHub Pages. Por exemplo, para um site localizado em <user>.github.io
, você deve criar um registro CNAME
que aponte www.example.com
para <user>.github.io
. Similarmente, para um site de organização localizado em <organization>.github.io
, você deve criar um registro CNAME
que aponte www.example.com
para <organization>.github.io
. Verifique se o registro CNAME
aponta diretamente para <user>.github.io
ou <organization>.github.io
sem incluir o nome do repositório.
Para obter mais informações sobre como criar o registro correto, consulte a documentação do provedor do DNS. Para obter mais informações sobre o domínio padrão do seu site, confira "Sobre o GitHub Pages".
Configurando um subdomínio
Para configurar um subdomínio www
ou personalizado, como www.example.com
ou blog.example.com
, você precisa adicionar seu domínio às configurações do repositório. Em seguida, configure um registro CNAME com seu provedor DNS.
-
Em GitHub, acesse o repositório do seu site.
-
Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.
-
Na seção "Código e automação" da barra lateral, clique em Páginas.
-
Em "Domínio personalizado", digite seu domínio personalizado e clique em Salvar. Se você estiver publicando seu site de um branch, isso criará um commit que adiciona um arquivo
CNAME
diretamente à raiz do branch de origem. Quando você publica seu site com um fluxo de trabalho personalizado GitHub Actions, nenhum arquivoCNAME
é criado. Portanto, você precisa criar um manualmente (contendo apenas uma linha de texto com o domínio personalizado). Para saber mais sobre sua fonte de publicação, confira "Configurar uma fonte de publicação para o site do GitHub Pages".Observação: se seu domínio personalizado for um nome de domínio internacionalizado, insira a versão codificada pelo Punycode.
Para saber mais sobre Punycodes, confira Nome de domínio internacionalizado.
-
Navegue até o provedor DNS e crie um registro
CNAME
que aponte o subdomínio para o domínio padrão do seu site. Por exemplo, se você quiser usar o subdomíniowww.example.com
para seu site de usuário, crie um registroCNAME
que apontewww.example.com
para<user>.github.io
. Caso deseje usar o subdomínioanother.example.com
para seu site de organização, crie um registroCNAME
que aponteanother.example.com
para<organization>.github.io
. O registroCNAME
deve sempre apontar para<user>.github.io
ou<organization>.github.io
, excluindo o nome do repositório. Para obter mais informações sobre como criar o registro correto, consulte a documentação do provedor do DNS. Para obter mais informações sobre o domínio padrão do seu site, confira "Sobre o GitHub Pages".Aviso: é altamente recomendável não usar registros DNS curingas, como
*.example.com
. Esses registros colocam você em risco imediato de aquisições de domínio, mesmo se você verificar o domínio. Por exemplo, verificarexample.com
impedirá que outra pessoa usea.example.com
, mas ela ainda poderá usarb.a.example.com
(que é coberto pelo registro DNS curinga). Para obter mais informações, confira "Verificando seu domínio personalizado para o GitHub Pages". -
Abra TerminalTerminalGit Bash.
-
Para confirmar se o registro DNS foi configurado corretamente, use o comando
dig
, substituindo WWW.EXAMPLE.COM pelo subdomínio.$ dig WWW.EXAMPLE.COM +nostats +nocomments +nocmd > ;WWW.EXAMPLE.COM. IN A > WWW.EXAMPLE.COM. 3592 IN CNAME YOUR-USERNAME.github.io. > YOUR-USERNAME.github.io. 43192 IN CNAME GITHUB-PAGES-SERVER . > GITHUB-PAGES-SERVER . 22 IN A 192.0.2.1
-
Se você usar um gerador de site estático para criar seu site localmente e efetuar push dos arquivos gerados para o GitHub, efetue pull do commit que adicionou o arquivo CNAME ao repositório local. Para obter mais informações, confira "Solucionar problemas de domínios personalizados e do GitHub Pages".
-
Opcionalmente, para impor a criptografia HTTPS no seu site, selecione Impor HTTPS. Pode levar até 24 horas para que esta opção fique disponível. Para obter mais informações, confira "Proteger o site GitHub Pages com HTTPS".
Nota: se você apontar seu subdomínio personalizado para o domínio apex, encontrará problemas com a imposição de HTTPS ao seu site e poderá encontrar problemas em que seu subdomínio não alcança seu site do GitHub Pages.
Registros de DNS para seu domínio personalizado
Caso tenha familiaridade com o processo de configuração do seu domínio para um site GitHub Pages, você poderá usar a tabela abaixo para procurar os valores DNS para seu cenário específico e os tipos de registro DNS com suporte do seu provedor DNS. Para obter mais informações, incluindo como configurar seu site GitHub Pages em GitHub e como verificar a configuração usando o comando dig
, consulte as seções acima.
Para configurar um domínio apex, você só precisa separar um único tipo de registro DNS na tabela abaixo. Para configurar um domínio apex e um subdomínio www
(por exemplo, example.com
e www.example.com
), configure o domínio apex e, em seguida, o subdomínio. Para obter mais informações, consulte "Como configurar um domínio apex e a variante de subdomínio www
".
Aviso: é altamente recomendável não usar registros DNS curingas, como *.example.com
. Esses registros colocam você em risco imediato de aquisições de domínio, mesmo se você verificar o domínio. Por exemplo, verificar example.com
impedirá que outra pessoa use a.example.com
, mas ela ainda poderá usar b.a.example.com
(que é coberto pelo registro DNS curinga). Para obter mais informações, confira "Verificando seu domínio personalizado para o GitHub Pages".
Cenário | Tipos de registro DNS | Nome do registro DNS | Valores de registro DNS |
---|---|---|---|
Domínio Apex ( example.com ) | A | @ | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
Domínio Apex ( example.com ) | AAAA | @ | 2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606:50c0:8003::153 |
Domínio Apex ( example.com ) | ALIAS ou ANAME | @ | USERNAME.github.io ouORGANIZATION.github.io |
Subdomínio ( www.example.com ,blog.example.com ) | CNAME | SUBDOMAIN.example.com. | USERNAME.github.io ouORGANIZATION.github.io |
Remover um domínio personalizado
Se você receber um erro relativo à obtenção de um domínio personalizado, talvez seja necessário remover esse domínio personalizado de outro repositório.
-
Em GitHub, acesse o repositório do seu site.
-
Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.
-
Na seção "Código e automação" da barra lateral, clique em Páginas.
-
Em "Domínio personalizado", clique em Remover.
Protegendo seu domínio personalizado
Se o site do GitHub Pages estiver desabilitado, mas tiver um domínio personalizado configurado, ele correrá o risco de uma tomada de controle de domínio. Ter um domínio personalizado configurado com o provedor DNS enquanto o site está desabilitado pode fazer com que outra pessoa acabe hospedando um site em um de seus subdomínios.
Verificar seu domínio personalizado impede que outros usuários do GitHub usem seu domínio com os repositórios deles. Se o seu domínio não for verificado e o seu site do GitHub Pages estiver desabilitado, você deverá atualizar ou remover imediatamente seus registros DNS com o provedor DNS. Para saber mais, confira "Verificando seu domínio personalizado para o GitHub Pages".