Apacheの設定が終わって https://~でアクセスしてみたらエラーになりました。 確認すると「安全でない他のリソースが含まれている」というメッセージが表示されました。
MovableType(以下 MT)のページソースを見ると、「http://blog.still-laughin.com/」から始まる大量のURLがあります。 単なるリンクならいいのですが、ページの構成要素の読み込みで HTTP接続を使っていると、このエラーが起きるようです。 考えてみれば当たり前ですね。
でもMTの設定画面ではドメイン名は変更できても、「http://」の部分は変更できません。 これを解決してくれる「HttpsConverter」というプラグインがあるようです。
ただ、そもそも絶対URLを(再構築で生成した)静的なページに書くのはどうなんだ?という想いが以前からありまして、どうせなら相対URLにしてしまいたいと思います。
「一部のブログをhttpsにしたい - MTQ | Movable Type ユーザーコミュニティ」を読むと、regex_replaceモディファイアを使うことで URLを置換できるようです。
たとえば、
<a href="<$mt:BlogURL encode_html="1" regex_replace="/^http:\/\/blog.still-laughin.com\//","/" $>">
とすれば、「http://blog.still-laughin.com/」を「/」に置換してくれます。
<script src="<$mt:SupportDirectoryURL encode_html="1" regex_replace="/^\/mt\/mt-static/","/mt-static" $>theme_static/rainier/js/html5shiv.js"></script>
とすれば、「/mt/mt-static」を「/mt-static」に置換できます。
スタイルシートも含めたテンプレートやウィジェットをくまなく見て、片っ端から egex_replaceモディファイアを挿入するのは骨が折れます。 間違えてスタイルシートを壊してしまって、昨晩から今朝まで CSSが適用されない醜態を晒してしまいましたが、なんとか完了したようです。
HTTPSで問題なく接続できることを確認したら、HTTPでアクセスしてきたものを mod_rewriteで自動的にHTTPSに変更するようにします。 ウチの場合は extra/httpd-vhost.conf の中に記述しています。
これで完了です。 GlobalSignの SSL Server Testで確認してみましょう。
大丈夫そうですね。