bobuhiro11's diary

Github PagesとCloudflareで静的サイトを配信

07 Oct 2017
[git]

これまで、bobuhiro11.netblog.bobuhiro11.net は、 自分で管理するサーバから配信していた。 ただ、どちらも静的サイトなので、必ずしも自分でインフラを管理する必要はなく、 楽をするために、これからはGithub Pagesを使って配信することにした。 調べてみたところ、Github Pagesでは、独自ドメインは利用できるが、HTTPSで配信することができない。 そこで、Github Pagesの前段に、SSL終端のできるCDNを配置した。 SSL終端のできるCDNは、いくつかあるようだが、 今回は無料で利用できるCloudflareを選択した。 Cloudflareには、DNSの機能もあるので、 お名前.comで登録している bobuhiro11.net とそのサブドメインを Cloudflareへ移行した。 まとめると、以下のようになる。

Githubの設定

Cloudflareの設定

ふつうzone apexにCNAMEレコードはマッピングできないが、 Cloudflareでは、CNAME Flatteningによって、例外的に割り当てることができる。 Aレコードよりも管理が楽なので、zone apexにもCNAMEを割り当てた。 適当にアカウントを登録して、設定を入れていく。 CloudflareとGithub Pagesの間では、sslを利用できないので、CryptoタブのSSL設定はFlexibleとした。 また、ブラウザにhttps接続を強制するために、HSTS(HTTP Strict Transport Security)の設定をする。

お名前.comの設定

設定情報の確認

しばらく待ってから、設定が正しく入っているかを確認

$ (dig bobuhiro11.net A @8.8.4.4; dig blog.bobuhiro11.net A @8.8.4.4; dig bobuhiro11.net NS @8.8.4.4; dig bobuhiro11.net SOA @8.8.4.4;) | grep IN | grep -v "^;"
bobuhiro11.net.         299     IN      A       104.27.171.197
bobuhiro11.net.         299     IN      A       104.27.170.197
blog.bobuhiro11.net.    299     IN      A       104.27.171.197
blog.bobuhiro11.net.    299     IN      A       104.27.170.197
bobuhiro11.net.         86399   IN      NS      mark.ns.cloudflare.com.
bobuhiro11.net.         86399   IN      NS      sima.ns.cloudflare.com.
bobuhiro11.net.         3599    IN      SOA     mark.ns.cloudflare.com. dns.cloudflare.com. 2025896629 10000 2400 604800 3600

comments powered by Disqus < GithubやBitbucketのプライベートリポジトリでCI/CD Chef実践入門の読書メモ >