リポジトリの管理者権限があるユーザは、GitHub Pages サイトのカスタムドメインを設定できます。
カスタムドメインの設定について
DNS プロバイダでカスタムドメインを設定する前に、必ず GitHub Pages サイトをカスタムドメインに追加してください。 カスタムドメインを GitHub に追加せずに DNS プロバイダに設定すると、別のユーザがあなたのサブドメインにサイトをホストできることになります。
DNS レコードの設定が正しいかどうかを検証するために利用できるdig コマンドは、Windows には含まれていません。 DNS レコードが正しく設定されているかを検証する前に、BIND をインストールする必要があります。
注釈: DNS の変更が伝播するには、最大 24 時間かかります。
サブドメインを設定する
www 、または www.example.com や blog.example.com のようなカスタムサブドメインを設定するには、サイトのリポジトリに CNAME ファイルを作成し、DNS プロバイダで CNAME レコードを設定する必要があります。
- GitHubで、サイトのリポジトリにアクセスしてください。
- リポジトリ名の下で Settings(設定)をクリックしてください。

- "Custom domain(カスタムドメイン)" の下で、カスタムドメインを入力してSave(保存)をクリックします。 これでCNAMEファイルを公開ソースのルートに追加するコミットが作成されます。

- お使いの DNS プロバイダにアクセスし、サブドメインがサイトのデフォルトドメインを指す
CNAMEレコードを作成します。 たとえば、サイトでwww.example.comというサブドメインを使いたい場合、www.example.comが<user>.github.ioを指すCNAMEレコードを作成します。 正しいレコードの作成方法に関する詳しい情報については、DNSプロバイダのドキュメンテーションを参照してください。サイトのデフォルトドメインに関する詳しい情報については「GitHub Pagesについて」を参照してください。 - ターミナルターミナルGit Bashを開いてください。
- DNS レコードが正しくセットアップされたことを確認するには、
digコマンドを使います。WWW.EXAMPLE.COM は、お使いのサブドメインに置き換えてください。$ 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 - 静的サイトジェネレータを使ってローカルでサイトを構築し、生成されたファイルをGitHubにプッシュしてイルなら、ローカルのリポジトリにCNAMEファイルを追加したコミットをプルしてください。 詳しい情報については「カスタムドメインとGitHub Pagesのトラブルシューティング」を参照してください。
- あるいは、サイトに対してHTTPS暗号化を強制したい場合は、Enforce HTTPS(HTTPSを強制)を選択してください。 このオプションが利用できるようになるには、最大で24時間かかります。 詳しい情報についてはHTTPSでGitHub Pagesサイトをセキュアにするを参照してください。

Apexドメインを設定する
Apex ドメイン、たとえばexample.com を設定するには、GitHub Pages リポジトリで CNAME ファイルを設定し、DNS プロバイダに ALIAS、ANAME、またはA レコードを設定する必要があります。
カスタムドメインとして Apex ドメインを使用している場合は、www サブドメインもセットアップすることをおすすめします。 DNSプロバイダを通じて各ドメインの種類のための正しいレコードを設定しているなら、GitHub Pagesは自動的にドメイン間のリダイレクトを生成します。 たとえばwww.example.comをサイトのカスタムドメインとして設定しており、Apex及びwwwドメイン用にALIAS及びCNAMEレコードを持っているなら、example.comはwww.example.comにリダイレクトされます。 詳しい情報については、「GitHub Pages サイト用のカスタムドメインを管理する」を参照してください。
- GitHubで、サイトのリポジトリにアクセスしてください。
- リポジトリ名の下で Settings(設定)をクリックしてください。

- "Custom domain(カスタムドメイン)" の下で、カスタムドメインを入力してSave(保存)をクリックします。 これでCNAMEファイルを公開ソースのルートに追加するコミットが作成されます。

- DNS プロバイダに移動し、
ALIAS、ANAME、またはAレコードを作成します。 正しいレコードの作成方法に関する詳しい情報については、DNSプロバイダのドキュメンテーションを参照してください。ALIASまたはANAMEレコードを作成するには、Apexドメインをサイトのデフォルトドメインにポイントします。 サイトのデフォルトドメインに関する詳しい情報については「GitHub Pagesについて」を参照してください。Aレコードを作成するには、Apex ドメインをGitHub Pages の IP アドレスにポイントします。185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153
- ターミナルターミナルGit Bashを開いてください。
- DNS レコードが正しく設定されたことを確認するには、
digコマンドを使います。EXAMPLE.COM は、お使いの Apex ドメインに置き換えてください。 結果が、上記の GitHub Pages の IP アドレスに一致することを確認します。$ dig EXAMPLE.COM +noall +answer > 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 - 静的サイトジェネレータを使ってローカルでサイトを構築し、生成されたファイルをGitHubにプッシュしてイルなら、ローカルのリポジトリにCNAMEファイルを追加したコミットをプルしてください。 詳しい情報については「カスタムドメインとGitHub Pagesのトラブルシューティング」を参照してください。
- あるいは、サイトに対してHTTPS暗号化を強制したい場合は、Enforce HTTPS(HTTPSを強制)を選択してください。 このオプションが利用できるようになるには、最大で24時間かかります。 詳しい情報についてはHTTPSでGitHub Pagesサイトをセキュアにするを参照してください。


