ブログ&ホームページ制作・運営・集客のための情報サイト

SKEG WORKS/ BLOG

3,500記事オーバーのブログを常時SSL(HTTPS)化完了!メリットデメリットやったことまとめ

更新日:

3,000記事オーバーのブログを常時SSL化(HTTPS)完了!やったことまとめ
お気付きの方もいらっしゃるかと思いますが、2018年5月14日に当ブログを常時SSLに移行しました。
公開していないものを含めると全部で3500記事を軽く超えてるこのブログ。2005年からMovableTypeで運営しているので、記事の中だけでなく各テンプレートの中にも色々と記述が古いものが紛れてました。
常時SSLに移行するにあたって、これらを全部きれいになきゃいけなかったので、面倒くさすぎてなかなか手をつけられませんでした。その重いお尻に猛火がついたのが2018年2月にGoogleから発表されたこちらの記事でした。

目次

以下の内容でまとめてます。

  1. 常時SSL化はもう避けられない
  2. 常時SSL化のメリット
  3. 常時SSL化のデメリット
  4. 常時SSL化のためにやったこと 一覧
  5. 公開後に「SSL/TLS証明書にドメイン名〜」がありません?
  6. まとめ

常時SSL化はもう避けられない

Googleは、2018年中に「Chrome」ブラウザで、HTTPS暗号化を導入していないすべてのウェブサイトに「Not secure(保護されていません)」と表示することを明らかにした。
「Chrome 68」から全HTTPサイトに警告表示へ--7月リリース - CNET Japan

現状でもChromeやSafariでは、HTTPS化されてないWebサイトのテキスト入力フォームで個人情報を入力しようとすると「Webサイトは安全ではありません」と赤文字で表示されます。
その警告が、2018年7月にリリース予定のChrome 68以降ではテキスト入力フォームの有る無しは関係なく、HTTPSではないすべてのページで表示されるようになるんです。
採用時期はずれるかもしれませんが、これはもうGoogle Chromeだけでなく他のブラウザでもそうなるのは間違いないでしょう。

Googleによると、今や世界のトップ100サイトのうち81サイトは、デフォルトでHTTPSを使用しているという。

常時SSL化はもう避けられないところまで来てるんです。

常時SSL化のメリット

常時SSL化とは、ホームページ内のログインページや入力フォームなど特定のページだけでなく、すべてのページをSSL化することです。
主なメリットはこちら。

  • セキュリティの強化
  • SEO(検索結果)に有利
  • 信頼性の向上、訪問者が安心する

1つ目。常時SSL化の最大のメリットは、データ通信の暗号化により、改ざんや盗聴を防ぐことができ、セキュリティが大幅に強化されること、ですね。
インターネットが出来た当初はセキュリティに対する配慮はほとんどありませんでした。
それが現在のように不特定多数の人が誰でもインターネットに接続できる状況になり、ホームページの乗っ取りやなりすまし、個人情報の盗難などの被害が増えるようになりました。
その結果、セキュリティを強化する必要が生まれ、暗号化通信を行うSSL(Secure Sockets Layer)が開発されたというわけです。
ちょっと調べてみると、SSLのほかにTLSという言葉も一緒に出てきます。SSLにも色々歴史がありまして、現在SSLと読んでいるものは実質TLSを指していることも多いんです。TLSはSSLの次世代規格というぐらい知っておけばOKです。
2つ目。Googleからは常時SSL(HTTPS)化が検索順位の決定要因になるということが発表されています。安全なものをお客様に提供することで、検索順位にも影響が出そうです。
3つ目。あとはホームページにアクセスした人の安心感でしょう。普通にインターネットしてる時に、アドレスバーに「このWebサイトは安全ではありません」なんて表示されてたら、見る気なくしますからね。
HTTPとHTTPSでは、信頼性は雲泥の差だと思います。

常時SSL化のデメリット

SSL化のデメリットとしては、SSLサーバ証明書の発行に費用が発生すること
証明書の種類や発行する認証局によって金額は様々です。年間数百円のものから10万円近くするものまであります。個人や法人かによっても利用すべき証明書は異なります。
ただ、最近では無料の「Let's Encrypt」という証明書が簡単に利用できるようになったため、敷居はかなり低くなってきてます。
GoogleがSSL化を推奨してるので、低コスト(無料)で利用できるものが出てくるのは必然でしょう。
僕も今回「Let's Encrypt」を使ってブログを常時SSL化しました。
もう一つのデメリットはSNSのカウントがゼロになること。はてなブックマーク、facebook、pocketなどのいいね!等の数がURLが変わるのでリセットされてしまいます。
安全性と信頼性の向上のためとはいえ、ちょっとこれは残念でした。
ただ、この中でもfacebookのいいね!については、引き継ぎができるようなので今度試してみようと思います。
その他のデメリットとしては、移行作業が面倒臭くさい、ことぐらいですかね。
ちょっと前なら広告関係の素材がHTTPSに対応してないということで、広告収入が減少するとも言われてましたが、今では広告配信側もHTTPSに対応してるので問題なし。
運営側からするとちょっと面倒くさいSSL化ですが、ホームページ利用者の立場に立てば、デメリットは何もありません。
安心なホームページが増えるのは、世の中にとってもいいことです。

常時SSL化のためにやったこと 一覧

当ブログのSSL化については、実は2017年3月ぐらいから手をつけてました。
ただ、当時はまだ広告タグまわりなどHTTPSに対応してないところも多かったのと、無料のSSL証明書もなかったので、作業は止まったままでした。
最近になって、色々とHTTPSに移行しやすくなったので移行に踏み切りました。
○環境
CMS:MovableType 6.1.2
サーバ:さくらインターネットプレミアム
○手順
以下の流れで進めました。(すべて1日でやったわけではなく、一つの作業を数回に分けて行いました)

  1. 広告(アドセンス、アフィリエイトなど)、アクセス解析(Google Analytics他)、ソーシャルボタン(twitter、facebook、pocket、はてブ、google+)、MTのプラグインなどがHTTPSでも動作するか確認
  2. サーバ証明書の取得・設定・手順の方法を把握しておく
  3. 広告サイトにて登録サイトの変更方法を確認
  4. 広告リンクをすべてHTTPSのものに変更
  5. Iframeでhttp参照してるものを変更もしくは削除
  6. 埋め込んでいたはてなブックマークなどのWebサービス埋め込みimgをhttpsに変更
  7. MTテンプレート内のブログURL直書きをMTタグに修正する
  8. ブログ全体をバックアップ
  9. さくらインターネットで利用しているDBをバックアップ
  10. さくらインターネットで「blog.skeg.jp」をSSL化申請
  11. MT記事内のリンク修正 http→https
  12. ソーシャルボタンのカウントがリセットされるので、数字がカウントされないデザインに変更
  13. MT mt-config.cgiの修正 http→https
  14. MTの公開URL・パス修正 http→https
  15. MT テンプレートやCSS、アーカイブ内部リンクの修正 http→https
  16. ブログ記事内のリンクとsrcを変更 http→https
  17. SSL証明書の発行完了を確認してからMT全体を再構築
  18. 各ページがHTTPSでダウンロードされているか確認
  19. 301リダイレクト設定・・・htaccessファイルの更新
  20. 広告関係の登録URLをhttpsに変更
  21. Google Search Consoleへhttpsサイトの登録
  22. Google Analyticsの設定変更
  23. サイトマップ(sitemap.xml)のチェック
  24. Facebookアプリに登録しているURLをhttpsに変更
  25. FaceBookやTwitter、YouTube動画からのリンクをhttpsに変更
  26. ブログ内にあるFeedly登録ボタンのURLをhttpsに変更
  27. 全公開記事を目視確認・随時修正

1〜7は、ブログ内で利用しているサービスすべてについて、HTTPSに対応しているかを確認します。対応してるものは、事前にhttp→httpsに変更しておきます。httpsのサイト内にhttpを参照しているものがあるのはダメですが、逆はOKです。
8、9に関しては切り替える日の前日に行いました。
10から26までは一気にやりました。2時間ちょっとで終わりました。
10.さくらインターネットのコントロールパネルで「Let's Encrypt」の申請を行います。アクセスが少ない夜中に行いましたが、10分ほどで証明書が発行されて使えるようになりました
11〜16を一気に作業します。事前に準備していたので迷うことなく作業できました。
17.MTは各テンプレートを修正しても再構築しないとページには反映されません。すべて終わった時点でまとめて再構築してhttp→httpsを反映させました。
18.ブログ内すべてを確認することはできないので、主要なテンプレートのページを確認。アドレスバーに緑色のバーに切り替わって接続が保護されているかをチェックします。
19〜26を一気に作業します。htaccessなど入れ替えが面倒なものは、事前に準備しておくと作業がスムーズに進みます。
27.全ページを目視確認。1ページずつ確認してみると記事内にhttpを参照しているものが数ページ見つかりました。(広告で利用していた楽天市場の画像など)

公開後に「SSL/TLS証明書にドメイン名〜」がありません?

無事に終わってホッとしたのもつかの間。
2日後にGoogle Search Console Teamから「SSL/TLS 証明書にドメイン名 https://blog.skeg.jp/がありません」というメールが届きました。
内容を見てみると、

https://blog.skeg.jp/ で使用されている現在の SSL / TLS 証明書にドメイン名 https://blog.skeg.jp/ が含まれていないことが判明しました。このためブラウザによっては、貴サイトを安全ではないウェブサイトとして認識している可能性があります。この結果、多くのウェブブラウザが、貴サイトにアクセスしたユーザーにセキュリティ警告メッセージを表示してユーザーをブロックすることになります。これは、安全でないサイトで起こりうる、第三者によるユーザーの閲覧の傍受を防ぐための措置です。
すでに TLS 証明書を置き換えている場合は、このメッセージを無視してください。ウェブサイトの安全性の向上にご協力いただき、ありがとうございます。

とあります。
念のため、ChromeとSafariで証明書を確認してみると、きちんとblog.skeg.jpが記載されてる。さくらインターネットでも確認しましたが、そちらもでちゃんと設定できているようでした。とは言うものの、気になったので調べてみると同様の方が結構いらっしゃいました。
結論から言うと、きちんと証明書に記載がある場合はそのまま放置してもいいということでした。
原因は、httpsに切り替えてすぐにGoogle Search Consoleに登録したことにあるようです。httpsサイトを登録してhtaccessで301リダイレクトさせてはいるものの、まだGoogleにはhttpの方がインデックスされてるわけで、ちょっと気が早すぎたようです。
証明書内にドメインがちゃんと登録されてるなら心配することはありません。もし心配なら、サーバ管理会社に質問すると間違いないでしょう。

まとめ

移行して数日はちょっと減るのかなと思ってたアクセス数。移行初日の結果を見てみると、予想外にも通常の2割り増しという結果になりました。
1日だけなので、httpsの効果かどうかは不明ですが、全時間帯を通じて先週の同曜日よりパフォーマンスは上がってます。これは期待していいかも。
ずーっと気になっていた常時SSL化。
面倒だなー、失敗したらどうしよう、とか色々考えてましたが、実際にやってみると意外と簡単でした。(簡単になるように、事前に調べて準備万端整えてたのがよかったのかも。)
これで7月にリリースされるGoogle Chrome 68にビクビクする必要はなくなりました!あー、スッキリ。まだの方はお早めに。

-制作
-, ,

Copyright© SKEG WORKS/ BLOG , 2024 All Rights Reserved.