リポジトリの管理者権限があるユーザは、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
レコードを作成します。 If you want to use the subdomainwww.anotherexample.com
for your organization site, create aCNAME
record that pointswww.anotherexample.com
to<organization>.github.io
. TheCNAME
record should always point to<user>.github.io
or<organization>.github.io
, excluding the repository name. 正しいレコードの作成方法に関する詳しい情報については、DNSプロバイダのドキュメンテーションを参照してください。 サイトのデフォルトドメインに関する詳しい情報については「GitHub Pagesについて」を参照してください。警告:
*.example.com
など、ワイルドカード DNS レコードは使わないでください。 ワイルドカード DNS レコードにより、あなたのサブドメインの 1 つで 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
警告:
*.example.com
など、ワイルドカード DNS レコードは使わないでください。 ワイルドカード DNS レコードにより、あなたのサブドメインの 1 つで GitHub Pagesサイトを誰でもホストできるようになります。 -
ターミナルターミナル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サイトをセキュアにするを参照してください。