先日当サイトを常時SSL化しました。SSL に関しては、Google が以前 SEO の要素として採用すると発表していたのと、設定などを試してみたかったことに加え、SSL化により速度向上が見込まれるという記事をちらほら見かけたので、実際に表示速度に影響があるのか興味がありました。
今回は、実際に当サイトを SSL化した前後で表示速度に変化があったかを確認してみます。
http と https の通信の仕方の違い
通常の http による通信を行う場合、まずクライアント側(ブラウザ)から通信を開始したい旨の要求(リクエスト)を投げ、それに対してサーバーが応答してから、本格的に通信を開始します。このプロセスを「ハンドシェイク」といいます。
SSL での通信を行う場合には、さらにこのプロセスにブラウザとサーバー間で暗号化通信を行うためのプロセスが加わります。そのため、通信を SSL 化した場合は、通常の http の通信より時間がかかるはずなので、https(http over SSL)のほうがサイトの表示速度が遅くなるものと思っていました。
しかし、SSL 化に関する記事などを見てみると、常時 SSL 化で表示が速くなるという記述を見かけたので、これを機会に表示速度が速くなるか試してみることにしました。
ここ最近は SSL 証明書の料金もぐっと安くなりました。安いものであれば、月額100円程度のものからあります。もちろん、EV 証明書などは非常に高額ですが、特に EC サイトではないサイトでは格安の SSL 証明書でも特に問題ありません。
当サイトは、ランキングでも最もおすすめのエックスサーバーで運営をしています。
エックスサーバーでは、2016年5月現在 Core SSL が 1年間無料・2年契約以上も大幅割引のキャンペーンをやっていますので、その Core SSL を使ってみることにしました。SSL証明書の取得のための認証もメールで行う必要すらなく、DNS の設定さえしてあれば自動的に行ってくれたので、非常に簡単でした。
SSL 化による表示速度の差は?
まず、SSL 証明書を取得する前に、http でのサイトの表示速度を測定しておきます。速度測定は、他の検証でも使用した GTmetrix を利用し、時間帯を変えて 5回ほど実施します。その平均値で比較しました。
以前 GTmetrix を使用した際に、エックスサーバーで「mod_pagespeed」という表示速度を向上させるモジュールを有効にしていると不安定な結果が出たため、念のため mod_pagespeed を ON/OFF し、その両方の状態で検証しました。ソースをチェックする限り、mod_pagespeed の切り替えは即時行われているようなのですが、念のため切り替え後 5~10 分程度空けてから実行しています。
また、ページボリュームも変えてチェックしてみたほうがいいと思い、トップページと表の多い仕様比較一覧、画像の多いランキングページの 3つをそれぞれチェックしました。
以下が検証の結果です。まずはmod_pagespeed が ON の状態から。(単位は秒)
mod_pagespeed ON
http | https | SSL有無の差 | |
---|---|---|---|
http | https | SSL有無の差 | |
トップページ | 2.9 | 3.9 | 1.0 |
仕様一覧 | 3.3 | 4.3 | 1.0 |
ランキング | 4.1 | 5.7 | 1.6 |
どのページの速度も、SSL化なしのほうが 1秒以上速い結果でした。
特に画像の多いランキングページの差が大きいですね。やはりページ容量の大きいほうが差が出ます。
次に、mod_pagespeed を OFF にした状態での結果です。
mod_pagespeed OFF
http | https | SSL有無の差 | |
---|---|---|---|
トップページ | 3.6 | 4.0 | 0.4 |
仕様一覧 | 4.1 | 4.2 | 0.1 |
ランキング | 4.1 | 6.0 | 1.9 |
こちらも SSL なしのほうが速いという結果になりました。
ただ、こちらの場合、トップページと仕様一覧では mod_pagespeed を ON にしているときよりも差がでていません。仕様一覧のページなんかは、ほぼ差がないといっていいでしょう。一方、ランキングページは逆に若干差が大きくなっていますね。
まとめると、全体的には以下のような傾向があると言えるでしょうか。
- SSL なしのほうが表示速度は速い
- SSL 化した場合、mod_pagespeed の効果が SSL なしよりも非常に小さい
常時SSL化による表示速度の変化まとめ
結果的には、いずれの場合もやはり SSL化後のほうが表示速度は遅くなりました。
ただ、mod_pagespeed を使用していなければ、(速くはならないにしろ)それほど差はないようです。使用するサーバーなどの条件が変われば、また違った結果が出るのかもしれません。
SEO 的には、今のところ SSL化で順位が変わるということはないようなので、急いで SSL化する必要はないかとは思います。
ただ、常時SSL化することにより、ソーシャルブックマーク数がリセットされたりするなどの問題もあるようなので(修正方法はあるようですが)、今後はサイト構築時点で実施しておくほうがいいのかもしれません。
最近は本当に SSL 証明書が安くなってきており、個人でも負担にならないレベルなので、いずれ常時SSL化するつもりなのであれば、早めの段階で検討してみるといいかもしれませんね。