常時SSL化しました
- 2017/11/06 23:26
- カテゴリー:お知らせ, 時空の塔::Info, 金狼亭::Info, サイト作成メモ, 時空の塔::History, 金狼亭::History, 砂塵の彼方::History
- タグ:サイト@時空の塔, サイト@金狼亭, サイト@砂塵の彼方
だいぶ前からそういう流れになってきてましたが、これまで費用面で諦めていました。特に重要な情報をやり取りするわけでもない個人の趣味サイトのために、そう高くはないとはいえ追加の出費をするのは、どうも躊躇われたのです。
ところが先月から、SAKURA InternetでLet's Encryptが使えるように。何と更新も自動でやってくれるありがたさです。
証明書の取得はワンクリックで終了、http://~へのアクセスをhttps://~に送る設定も難しくなく、簡単簡単と思っていたら、そこからが大変でした。長くやっている間にサイトの構成ファイルが結構な数になっていて、SSLを想定していないスクリプト類の更新、網の目のように張り巡らされたリンクの中から修正が必要なものを探す作業、そして最終的な確認と、それなりの時間を消費しました。
やはり、そんなに甘くは無かった……!
なお、1つだけ作業が終わっていない部分があります。
ガラケー向けの変換スクリプトが、これまでの設定では上手く動かなくなりました。自分で作っていないので、ゼロからの調査が必要です。今日明日の対応とはいかないかもしれません。
ガラケー派の方にはご迷惑おかけしますが、今しばらくお待ちください。
・この不定期日記は単体でガラケーでの表示に対応しているため、そのままご利用いただけます。
・連絡用掲示板など他にもいくつか影響を受けない部分がありますが、そもそも使われていないので(以下略)
※11/12 ガラケー表示、再稼働しました。
なお、証明書不一致による接続不能を避けるため、ガラケーでアクセスした場合にはHTTP接続となります。
HTTPSではアクセスできない端末もあるのでやむなく……。
ガラケーでご覧になる方は、セキュリティ対策がなされていないことにご注意ください。
(11/7追記)
その後、URL正規化の過程で不具合が起きることが分かりました。
サーバのデフォルトの仕様では、
http://simoom.net/
http://www.simoom.net/
のどちらを使ってもアクセスできるようになっているのですが、内容同じでURLが2つにならないように、wwwなしのアクセスはwwwありに書き換えて、URLを統一していました。
が! SSL化後も同じことをやろうとすると、転送で無限ループが発生し、正常にアクセスできません。.htaccessの記述は間違っていないし、だいたい過去には問題無かった箇所です。
これは処理に使っている環境変数の方がおかしいのかもと一覧で出力してみたところ、HTTP_HOST(SERVER_NAMEも)値が面白いことになってました。
http://simoom.net/ にアクセス
→HTTP_HOST=simoom.net
http://www.simoom.net/ にアクセス
→HTTP_HOST=www.simoom.net
https://simoom.net/ にアクセス
→HTTP_HOST=simoom.net
https://www.simoom.net/ にアクセス
→HTTP_HOST=simoom.net(←!!?!)
HTTP_HOST=simoom.netならhttps://www.simoom.net/~に送るという操作をしていたので、ループするのは当然です。
SAKURA Internet、何故こんな仕様?? 他に代用できる変数もなし、困った……
と思っていたら、ちゃんと解決している方がおられました。
上級者向け設定、そう言えばそんなのあったなぁ;
→さくらでURL正規化を正しく行うSSLの設定方法 - はるかのひとりごと
なお、上記記事は有料の証明書を使う時のやり方です。
無料SSLでは、そのままの手順は使えませんが、だいたい同じ方法で解決できます。