格安SSL証明書でサイトを完全HTTPSに移行【WordPress+RapidSSL】

クラウド
クラウドWordPress
スポンサーリンク

このサイトでは、Wordpressの管理画面のみ自己署名証明書を使ってHTTPS化していましたが、通常のページに張り込んでいる画像のリンクURLが「https://〜」になってしまったり、 自己署名証明書を使っているため、AWSのS3へのデータバックアップの手動実行ができなかったりと、 色々不都合がありました。また、以前記事に書いたのですが、Googleの検索結果のURLがhttpsになってしまうこともありました。

最近では、正式なSSL証明書でも安いところでは1,000円/年くらいで導入できるようですので、いっそのこと完全HTTPSに移行することにしました。

また、HTTPS化するとGoogleの検索結果ランキングに、少しだけ有利になるといった利点もあります。

▽ HTTPS をランキング シグナルに使用します
http://googlewebmastercentral-ja.blogspot.jp/2014/08/https-as-ranking-signal.html

このランキングの変更は、グローバルでクエリの 1% 未満にしか影響しませんが、これから長い期間をかけて強化していきます

ただしHTTPS化するデメリットもあります。

  • 画像のリンクURLを「https://〜」または相対パスに変更しなければならない
  • SNSボタンのカウント数が「0」になる

画像やCSSなどのリンクURLに「http://〜」が使われていると、WEBブラウザで警告されることがあります。また、URLが変わるのため、SNSボタンのカウント数がクリアされてしまいます。このサイトではほとんどシェアされていないので(^^;)まったく問題ありませんが、よくシェアされているサイトでは検討が必要かと思います。

SSL証明書の取得

「格安SSL証明書」で検索して、一番安かったSSLストアさんから、RapidSSL(ラピッドSSL)のSSL証明書を取得しました。価格は1,080円也(2014年10月現在)

有名どころの認証局だと年間数万円はかかりますので、これが1,000円ちょっとで取得できるのには驚きです。SSL証明書の価格破壊といったところでしょうか 、だた、安いとはいえGeoTrust社の低価格ソリューションブランドとの位置づけですので、このサイトのような個人用途には十分かと思います。

HTTPS化設定

Googleのガイドラインに沿って設定してみました。サーバ環境は、CentOS6.5+Apache2.2です。 ドメイン名はご自分の環境に読み替えてください。

▽ HTTPS でサイトを保護(ウェブマスター ツール ヘルプセンター) https://support.google.com/webmasters/answer/6073543

サーバー側の 301 HTTP リダイレクトを使って HTTPS ページまたはリソースにユーザーと検索エンジンをリダイレクトします。

これはお決まりの設定ですね。※リダイレクト先URLの最後の「/」を忘れないように!

<VirtualHost *:80> 
    ServerName blog.apar.jp 
    Redirect permanent / https://blog.apar.jp/ 
</VirtualHost>

 

同じ安全なドメイン上にあるリソースには相対 URL を使用します。

デメリットにも書きましたが、HTTPS化で一番手間がかかるのがコレです。このサイトはまだ記事が少ないので、手作業で相対URL(例:/wp-content/uploads/2014/09/sample.jpg)に変更しました。
 

他のすべてのドメインにプロトコル相対 URL を使用(例: //petstore.example.com/dogs/biscuits.php)するか、HTTPS リソースに直接リンクするようにサイトリンクを更新します。

上記に関しては、まだまだHTTPS化しているサイトは少ないですので、リンク先のサイトの状況に合わせて設定します。 プロトコル相対URLで指定すると、サイトリンクが有無も言わさず「https://〜」になってしまうので、今ところはやめておいた方が無難でしょう。
 

HTTP Strict Transport Security(HSTS)をサポートするウェブサーバーを使用し、HSTS を必ず有効にします。

ブラウザにHTTPS接続を強制することで、HTTPからHTTPSにリダイレクトする際に、中間者攻撃されることを防ぐことができます。「SSLEngine on」の下あたりに、Header ディレクティブで追加します。

<VirtualHost *:443> 
    ServerName blog.apar.jp 
    SSLEngine on 
    Header set Strict-Transport-Security "max-age=31536000; includeSubDomains" 
(以下省略)

設定方法は、下記のサイトを参考にさせて頂きました。

▽ HTTPSを使ってもCookieの改変は防げないことを実験で試してみた(徳丸浩の日記)
http://blog.tokumaru.org/2013/09/cookie-manipulation-is-possible-even-on-ssl.html

GoogleのHTTPS推進に思うこと

WEBの巨人GoogleがHTTPS化を推進するのであれば、近い将来HTTPS化は必須になるかもしれません。 そうなった時に、安くなったとはいえSSL証明書の費用を負担するのは、サイトの運営者です。

企業で運営しているサイトであれば、サイトを通じたある程度の収益も期待できますが、 個人サイトでSSL証明書の費用を賄えるだけの収益があるの方はごく少数ででしょう。 その中には、Googleの検索品質に貢献しているような良質なコンテンツを作成している方もいるはずです。

もしかしたら将来、Googleが自ら認証局を運営して、サイト運営者に無償でSSL証明書を発行! なーんてことがあるかもしれませんね。(あるといいなあ)

コメント

タイトルとURLをコピーしました