SSLの更新は手動でしないとダメなの?

サイトをSSL化した理由

このホームページのアドレスはhttps://cheshire-cat.infoです。
以前はhttp://cheshire-cat.infoでした。

httpがhttpsになったんですね。

httpとhttpsの違いは、通信を暗号化しているか? していないか? にあります。
httpsはSSL(Secure Socket Layer)という技術を使って、通信を暗号化しているのです。

別にこのサイト程度であれば、盗まれて困る情報もないので暗号化しなくてもいいとは思っています。

けれど最近、暗号化していないサイトはインターネットを閲覧できるソフト、特にグーグルクロームを使う場合に画面に注意が表示されるようになりました。

グーグルクロームはインターネットエクスプローラーと共に、もっとも使われているソフトです。

その画面に注意表示が出されるのでは、サイトの安全性・信ぴょう性が疑われます。
それでサイトをSSL化することにしました。

SSLの有効期限

サイトのSSL化ですが、これは1度行えば永久に使える、というわけではありません。
SSLには有効期限があって、一般的には1年です。

けれど私はSSL化にお金を払いたくなかったので無料のSSLを使いました(Let’s EncryptというSSLです)。
その代わりLet’s Encryptは有効期限が90日と短いです。

最初は私が使っているサーバー(エックスサーバー)が独自に有効期限を90日に設定しているのかな? と思ったのですが、Let’s Encryptの仕様が90日だそうで、これはエックスサーバーに原因があるのではないですね。

その代わり、原則としてエックスサーバーが90日ごとに自動更新してくれるようです。

SSLを手動更新しなければならないときもある…

ですが、常にエックスサーバーが自動更新してくれるわけではないんですね。
それに今日気付きました。

今日、エックスサーバーからメールが来ました。
「SSLが自動更新できませんでした」という内容でした。

「なぜ自動更新できないのか?」と思い、原因を調べたところ、どうやらホームページに転送設定をかけている場合は、SSLの自動更新ができないようです。

どういうことか説明すると、このホームページアドレスはhttps://cheshire-cat.infoですが、仮にアドレスバーにhttp://cheshire-cat.infoと入力しても、https://cheshire-cat.infoのホームページが表示されます。

これは私がそのような設定、つまりは転送設定をかけているからです。

これに対し、仮に転送設定をしない場合は、https://cheshire-cat.infoとhttp://cheshire-cat.infoの両方のサイトを表示させることが可能です。
ですが、そういうことをしたくないからこそ、転送設定をしているわけですよ。

.htaccessを設定する

このまま何もしないとhttpsからhttpに戻ってしまいます。
それは困るので、SSLを手動で更新することにしました。

そこで転送設定を一時的に止めます。
転送設定が止まっている間は、SSLを手動更新できるからです。

SSLを止めるためには、.htaccessというファイルを設定し直さなければなりません。

その設定を先ほど終え、SSLを更新させました。
SSL更新後、すぐに.htaccessを再設定して、転送設定をつけたんですけどね。

それにしてもSSLを更新するたびに.htaccessを設定し直すのは面倒ですね。

有料のSSLなら自動更新してくれるのでしょうか?
自動更新してくれるであれば有料のSSLを使うことも今後の選択肢になってきますね。