GitHub

GitHub Pagesなのですから、当然最初はGitHubの準備や設定やら。

慌ててHTTPS対応の設定をメモったので、ドメインとリポジトリ名と画像がちぐはぐになってますが、うまく解釈してくれると楽、じゃなくて助かります。

GitHubの準備から

GitHubより登録。

リポジトリを作成

最初からカスタムドメインで運用する前提で書きます。自分がそうだったので。
リポジトリ名はhoehoeで作成(説明画像ではhogehoge1

GitHub New Repository

手元に持ってくる。パターンはいくつかある。↓参照(説明画像ではhogehoge)。 GitHub Set Theme

今回は一番上の案を採用。HTTPSなりSSHなりの文字列をコピーして、git cloneを実行。 HTTPSパターンだとこういう感じで。

$ git clone https://github.com/ユーザID/hoehoe.git

SSHパターン。

$ git clone git@github.com:ユーザID/hoehoe.git

DNS設定(HTTPS対応)

www.hoehoe.tkなCNAMEレコードに、ユーザID.github.ioな値を設定。

SettingsGitHub PagesCustom domainに、www.hoehoe.tkという感じでドメインを設定。
GitHub Custom Domain
リポジトリにCNAMEというファイルが作成されて、その中にカスタムドメインがぴろっと書かれていたら正解。
Enforce HTTPSにチェックが付けられないのは後述。

よく行方不明になるHelpを。

あと、こういう記事も。カスタムドメインのHTTPSひゃっほー、なのです。

それを踏まえてDNSにこういう設定を。
CAAレコードの値はCAA Record Helperで生成できる。

name Type Target
@ A 185.199.108.153
@ A 185.199.109.153
@ A 185.199.110.153
@ A 185.199.111.153
www CNAME ユーザID.github.io
www CAA 0 issue “letsencrypt.org”

CAAレコードが使えないDNSサービスでCAA抜きで設定をしてもイケた。
CNET Japanの記事によると、

CAAレコードが指定されていない場合は、どの認証局(CA)でも証明書を発行できます。 2017年9月8日よりSSLサーバ証明書発行時のDNSのCAAレコードチェックが必須に - CNET Japan

ということなので、そういうことなのかな。
何度かセキュアじゃないという警告が出たのはそのせい?

これでしばらく待つとEnforce HTTPSにチェックを付けられるようになるので、忘れずにチェックを。 GitHub Custom Domain

環境構築 on Windows

自分がそうなので。オレオレですみません。
GitHub Desktopをインストール2
git for windowsをインストールするとコマンド画面で作業できる。
USBメモリに持ち歩くために探したのがGit PortableとかGit for Windows Portableとか。

Brackets

BracketsなるテキストエディタにBrackets-Gitという拡張機能を追加すると、エディタからadd, commit, pushなどが可能。
今までは書き溜めたのをまとめてばーっとcommit→pushだったので、一度のcommitにコメントが渋滞してた。

これだと簡単にファイル別にcommitできるし、Git Shellを行き来しなくてもpushできる。もちろんpullも。
これでcommitログが見やすくなる。

既にGit for Windowsなどでコマンドでのgitが使えていることが前提。
最初にgit.exeが見当たらないって怒られたけど、whereで調べた結果、~\AppData\Local\なフォルダにあったせい。いつもGit Shellで立ち上げてたから気にならなかった。
それをうまく設定してあげれば、かなり便利。

迷子なURL対策

かなり前というか、1995年から作っていたサイトに、今でもLinux系のリンク経由で飛んできていたのにびっくり。
ありがとう、Check your website’s backlinks -SEO Toolbox
なので、GitHubからリダイレクトするように設定してみた。

_layouts/redirected.htmlに、こういうファイルを作成。

Gemfileにも追加。

group :jekyll_plugins do
	gem 'jekyll-redirect-from'
end

_config.ymlに追加。

plugins:
  - jekyll-redirect-from

リダイレクトしたいURLのある場所に、ファイルを設置。
例としてあげたのは、実際に最近も廻ってきているらしい、Linux関係の設定。
どこにも書いてなかったが、フォルダは/_Linux/ではなく、アンダーバー無しの/Linux/に置くべし。
嘘ですごめんなさい、フォルダは自由です。permalinkさえちゃんと設定されていれば、どこに置いても問題無しです。
自分の場合はredirectedフォルダに放り込んであります。

---
layout: redirected
sitemap: false
permalink: /Linux/
redirect_to: https://1995.treetop.to/Linux/
---

あとは通常通りにbundle updateやらjekyll sやらでできた。
お試しで/Linux/indexにアクセスすると、スパーンっとリダイレクトされるように。

  1. 古い記事だと”xxx.github.io”で作るように書いてあったのだが、”github.io”を付けなくてもカスタムドメインは作れるっぽいっていうか、作れた。 

  2. でもGit Shellしか使ってないかも。 

Leave a Comment