さくらのレンタルサーバ独自ドメイン SSL で HTTPS 接続かどうかを知るには

こないだの話の続きというか、メモ。

環境変数 HTTPSon がセットされるのでこれでわかる。SERVER_PORT80 のままなので注意。

なんだけど、これはなんかの仕様にあるのかさくら固有の話なのかがまだわからん。

SSL 証明書を取った

勉強を兼ねてこのサイトでも https で接続できるように SSL/TLS の証明書を取ってみた。

ドメイン認証だけの証明書であれば(個人ならそれでいいと思う)年額千いくらからあったので、掲示板や WordPress などを気持ちよく設置しときたいならさくっと入れるのがよいと思った。機械処理なのでほとんどのショップで一、二時間で取得できるはず。

無料でドメイン認証の証明書を発行する Let’s Encrypt は今年なかばにスタートすると謳っているけれど、開始早々は混乱があるかもしれないと思ってあえてふつうに買いました。

さくらのレンタルサーバでは SNI 証明書を管理画面から簡単に設定できるので Apache の設定ファイルをごにょごにょする必要もない。ただ、ワイルドカードやマルチドメインの証明書は使えないので横着して失敗しないように。

すべてのページで表示確認はできてないので、おかしなところがあれば教えていただけるとうれしいです。

サイトを Bitbucket から更新する

レンタルサーバのファイルを Bitbucket で管理・更新する話。

うちのページはファイルを Bitbucket の Git リポジトリ(プライベート)で管理している。以前はレンタルサーバの中に Subversion をインストールしてそこで管理していたのだけど少し前に引っ越した。

引っ越す前は、SSH 経由で更新用のスクリプトを実行させて、サーバ内のリポジトリから更新分をチェックアウトせさるという形で更新していたのだけど、リポジトリを Bitbucket に移行させたのを機にこのプロセスも見なおすことに。もちろんいままで同様にスクリプトを(git で更新分を引っ張ってくるように書き替えて)呼び出してもいいのだけれど。

ちなみに、なぜかいまではさくらのレンタルサーバでは最初から git コマンドが使える。

GitHub、Bitbucket のコミット(プッシュ)時のフックに登録してそのサーバの(公開用の)Git 作業コピーを更新するという PHP スクリプトが GitHub にあったのでそれを試してみる。

Bitbucket 用と GitHub 用のふたつのスクリプトがあります。ちなみに名前の通りリポジトリの種類は Git のみ。Mercurial は使えない。

これをレンタルサーバの公開用ディレクトリのどこかに展開。そのあと Bitbucket のコンテンツを格納しているリポジトリの設定で “Hooks” に POST フックとしてその URL を貼る。

これで手元の作業コピーから変更をプッシュすると自動的にレンタルサーバのコンテンツもアップデートされるようになった。めでたしめでたし。

2015-02-14 追記: その後気づいた点。当たり前かもしれないけど、Bitbucket のほうでマージしただけじゃフックは呼び出されないね。あくまでコミットで動く。