1
0
mirror of synced 2025-12-22 03:16:52 -05:00
Files
docs/content/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site.md
Vanessa Yuen 3df90fc9b8 Hello git history spelunker!
Are you looking for something? Here is all of the GitHub Docs history in one single commit. Enjoy! 🎉
2020-09-27 14:10:11 +02:00

5.3 KiB

title, intro, redirect_from, product, versions
title intro redirect_from product versions
Managing a custom domain for your GitHub Pages site You can set up or update certain DNS records and your repository settings to point the default domain for your {{ site.data.variables.product.prodname_pages }} site to a custom domain.
/articles/quick-start-setting-up-a-custom-domain/
/articles/setting-up-an-apex-domain/
/articles/setting-up-a-www-subdomain/
/articles/setting-up-a-custom-domain/
/articles/setting-up-an-apex-domain-and-www-subdomain/
/articles/adding-a-cname-file-to-your-repository/
/articles/setting-up-your-pages-site-repository/
/articles/managing-a-custom-domain-for-your-github-pages-site
{{ site.data.reusables.gated-features.pages }}
free-pro-team
*

People with admin permissions for a repository can configure a custom domain for a {{ site.data.variables.product.prodname_pages }} site.

About custom domain configuration

Make sure you add your custom domain to your {{ site.data.variables.product.prodname_pages }} site before configuring your custom domain with your DNS provider. Configuring your custom domain with your DNS provider without adding your custom domain to {{ site.data.variables.product.product_name }} could result in someone else being able to host a site on one of your subdomains.

{% windows %}

The dig command, which can be used to verify correct configuration of DNS records, is not included in Windows. Before you can verify that your DNS records are configured correctly, you must install BIND.

{% endwindows %}

{% note %}

Note: DNS changes can take up to 24 hours to propagate.

{% endnote %}

Configuring a subdomain

To set up a www or custom subdomain, such as www.example.com or blog.example.com, you must create a CNAME file in your site's repository and configure a CNAME record with your DNS provider.

{{ site.data.reusables.pages.navigate-site-repo }} {{ site.data.reusables.repositories.sidebar-settings }} {{ site.data.reusables.pages.save-custom-domain }} 5. Navigate to your DNS provider and create a CNAME record that points your subdomain to the default domain for your site. For example, if you want to use the subdomain www.example.com for your user site, create a CNAME record that points www.example.com to <user>.github.io. If you want to use the subdomain www.anotherexample.com for your organization site, create a CNAME record that points www.anotherexample.com to <organization>.github.io. The CNAME file should always point to <user>.github.io or <organization>.github.io, excluding the repository name. {{ site.data.reusables.pages.contact-dns-provider }}{{ site.data.reusables.pages.default-domain-information }} {{ site.data.reusables.command_line.open_the_multi_os_terminal }} 6. To confirm that your DNS record configured correctly, use the dig command, replacing WWW.EXAMPLE.COM with your subdomain.

    $ dig <em>WWW.EXAMPLE.COM</em> +nostats +nocomments +nocmd
    > ;<em>WWW.EXAMPLE.COM.</em>                     IN      A
    > <em>WWW.EXAMPLE.COM.</em>              3592    IN      CNAME   <em>YOUR-USERNAME</em>.github.io.
    > <em>YOUR-USERNAME</em>.github.io.      43192   IN      CNAME   <em> GITHUB-PAGES-SERVER </em>.
    > <em> GITHUB-PAGES-SERVER </em>.         22      IN      A       192.0.2.1

{{ site.data.reusables.pages.build-locally-download-cname }} {{ site.data.reusables.pages.enforce-https-custom-domain }}

Configuring an apex domain

To set up an apex domain, such as example.com, you must configure a CNAME file in your {{ site.data.variables.product.prodname_pages }} repository and an ALIAS, ANAME, or A record with your DNS provider.

{{ site.data.reusables.pages.www-and-apex-domain-recommendation }}

{{ site.data.reusables.pages.navigate-site-repo }} {{ site.data.reusables.repositories.sidebar-settings }} {{ site.data.reusables.pages.save-custom-domain }} 5. Navigate to your DNS provider and create either an ALIAS, ANAME, or A record. {{ site.data.reusables.pages.contact-dns-provider }} - To create an ALIAS or ANAME record, point your apex domain to the default domain for your site. {{ site.data.reusables.pages.default-domain-information }} - To create an A record, point your apex domain to the IP addresses for {{ site.data.variables.product.prodname_pages }}. shell 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 {{ site.data.reusables.command_line.open_the_multi_os_terminal }} 6. To confirm that your DNS record configured correctly, use the dig command, replacing EXAMPLE.COM with your apex domain. Confirm that the results match the IP addresses for {{ site.data.variables.product.prodname_pages }} above.

$ dig <em>EXAMPLE.COM</em> +noall +answer
> <em>EXAMPLE.COM</em>     3600    IN A     185.199.108.153
> <em>EXAMPLE.COM</em>     3600    IN A     185.199.109.153
> <em>EXAMPLE.COM</em>     3600    IN A     185.199.110.153
> <em>EXAMPLE.COM</em>     3600    IN A     185.199.111.153

{{ site.data.reusables.pages.build-locally-download-cname }} {{ site.data.reusables.pages.enforce-https-custom-domain }}

Further reading