WEB担当者の方なら「SSL対応」が気になっていることと思います。最近では、SEOの1つとして評価されるという話も出てきていますよね。
自分もSSL(常時SSL)は必要だよなと思いつつ後手後手にまわっていましたが、やっと「WEBマスターの手帳」をSSL化しました。(まだ全てのページで完璧にはできていませんが)
SSLとは
まずは「SSL」とはなにかについて簡単に説明します。
SSLとは、Secure Socket Layerの略で、インターネットで暗号通信をする仕組みのことです。
WEBサイトも表示するには毎回、インターネットを使ってWEBサイトのデータが保存されている「サーバー」と通信をしています。この通信を暗号化するのがSSLです。
SSLをWEBサイトで導入すると、通信されるデータが暗号化されるので、もし第3者がデータを盗み見ても、暗号化されているため中身がわかりません。
ECサイトの購入ページ(クレジットカード決済など)や、WEBサイトの問い合わせページなど、個人情報を扱う場合に該当ページのみをSSL化していることが多いですね。
常時SSL
WEBサイトの一部だけではなく、WEBサイト全体でSSL化することを「常時SSL」と呼びます。
FacebookやTwitter、YouTubeなども常時SSL化していますよね。
SSLが導入されているWEBページやWEBサイトは、URLが「https:〜」となっています。またブラウザのURL欄でhttps:が緑色になっていると思います。
WEBサイトをSSL化する3つのメリット
WEBサイトでSSL導入して「SSL化」するメリットを見てみましょう。
①SEOで評価される
先にSEOの話です!笑。Googleは2014年に公式に「HTTPS(SSLを導入しているWEBサイト)」がランキングに影響するとアナウンスをしています。
参考:Google ウェブマスター向け公式ブログ: HTTPS をランキング シグナルに使用します
とくにHTTPSのサイトとHTTPのサイトではHTTPSのページを優先的にインデックスするとの公式発表もあったので、SEOを強く意識しているのならSSL化しない理由はないでしょう。(HTTPSにしないと絶対にダメということはありえません!)
参考:Google ウェブマスター向け公式ブログ: HTTPS ページが優先的にインデックスに登録されるようになります
HTTPとHTTPSの違い
いきなりHTTPとかHTTPSとか出てきた!とパニックにならないで下さいね。
HTTPとは、HyperText Transfer Protocol(ハイパーテキスト・トランスファ・プロトコル)の略です。
先程も書いた通り、WEBサイトを閲覧するために、ブラウザはサーバーと通信(やりとり)をしているわけですが、このやり取りの仕方や手順を規定しているのがHTTPです。
HTTPSというのはHTTP+Secure(安全な)で安全なHTTPS。つまりSSLによって、データを暗号化させ、通信するシステムが適用されているHTTPということになります。
②WEBサイトのハッキング対策
Googleがなぜ「HTTPS」を評価基準にしているかというと、WEBサイトのハッキング対策があります。
たびたび「WEBサイトがハッキングされた」と騒ぎが起こりますが、WEBサイトがハッキングされると、WEBサイトが改ざんされたり、なりすまされたり、ウイルスに感染させられたりと、かなり厄介なトラブルが発生する可能性があります。
WEBサイトがハッキングされるとGoogle検索結果にも「このサイトは第三者によってハッキングされている可能性があります」と表示されますので、WEBサイトとして大ダメージです。
③訪問者が安心する
SSLが導入されていないと、通信が暗号化されていないので、もし第3者に盗み見られていた場合に、入力した情報が筒抜けになってしまいます。
インターネットを利用する上で「クレジットカード情報などの個人情報が漏洩しないか」と心配している方は多いでしょう。
WEBサイトがSSL化されていたり、SSL認証シールを掲載していると安心感を持つ方もいらっしゃるでしょう。
実際は、そこまでわかっていない(気にしていない)人のほうが多い気もしますが…
WEBサイトをSSL化する3つのデメリット
SSL化するデメリットというと大げさですが、SSL化すると良いことばかりあるわけではありません。
①WEBサイトの修正作業が大変
SSL化するには、SSLサーバー証明書を認証機関(グローバルサインなど)から発行してもらい、サーバーがSSL対応しただけでは終わりません。
完璧にWEBサイト全体を常時SSL化するには、WEBサイト内にあるURL(内部リンク、外部リンク、画像ファイルなど)をhttpsに最適化する必要があります。
②URLが変わる
SSL化をすると「http:~」から「https:~」へとURLが変わります。
それに伴い、シェアボタンに表示されていたシェア数もリセットされます。(WordPressの場合は「SNS Count Cache」で対応可能:後述あり)
③費用がかかる
SSL化には、第3者認証機関(認証局)に「SSLサーバー証明書(証明内容:通信の暗号化、ドメイン、サーバーの所有者)」を発行してもらう必要があります。
この認証を行っているのが「グローバルサイン」などです。これら認証局と契約をするのに費用が発生します。利用しているサーバーなどにより料金が変わることがありますが、グローバルサインであれば、28,868円/年がかかります。
WEBマスターの手帳はエックスサーバーを利用しているので「CoreSSL」と契約をしましたが、1,000円/年でした。
参考:独自SSL – 料金 | レンタルサーバー 高速・高機能・高安定性の【エックスサーバー】
SSLブランドの違い
どのSSLブランドを選べば良いのかわかならない方もいらっしゃると思います。
自分も専門家ほど詳しくはないのですが、機能的な違いは無いようで、対外的な「認知度」と「信用度」の差のようです。費用が高いと認証範囲が広くなる(法的存在証明や物理的実在証明など)ため、それに応じてWEBサイトへの信用も高くなるということですね。
SSLブランドによって、WEBサイト上に「SSLシール」を掲載できるか否かの違いもあります。WEBサイト上に見える形で「SSLシール」が貼ってあると信用してもらいやすいでしょう。
証明書の種類は「ドメイン認証」というのが「WEBサイトが実在しているか」を確認する認証で、低価格+個人でも利用できます。
エックスサーバーでWordPressをSSL化する手順
前置きが長くなりましたが、エックスサーバーでWordPressのWEBサイトをSSL化する方法です。
SSL化の作業を行う場合は、自己責任において行ってください。ここでご紹介した方法でうまく出来なかった場合に、当方では一切の責任を負いかねます。
バックアップを取ろう
まずはWEBサイトのバックアップを取りましょう。WEBサイトに手を加える際は必ずバックアップを取る!
バックアップを取っておけば、もし万が一トラブルが起こっても、WordPressを入れなおして、復旧させることができます。
- 【保存版】wordpressのバックアップ方法とエラーが発生した時の復旧方法。 | WEBマスターの手帳
- これで安心!WordPressのファイルとデータベースをバックアップする方法 | WEBマスターの手帳
WordPressなら「SNS Count Cache」を有効化させておく
WEBマスターの手帳での失敗談です。SSL化するとURLが変わるため、ソーシャルメディア(FacebookやTwitterなど)の「いいね数」などシェア数がリセットされます。
ですがWordPressの「SNS Count Cache」プラグインを使うとSSL化後もシェア数を残すことができます。
ただし!シェア数を残すにはSSL化する前に「SNS Count Cache」を使ってシェア数のキャッシュを記録しておく必要があります。SSL化後に「SNS Count Cache」を有効化してもキャッシュが残っていないので、シェア数はリセットされます。
独自SSLでサーバ証明書の取得
SSL化する準備ができたら、「サーバー証明書」を取得します。
今回はエックスサーバーでの内容になります。エックスサーバーで独自SSLを申し込むのは非常に簡単(CSRの発行などエックスサーバーがやってくれる)でした。
参考:独自SSLのお申し込み – マニュアル | レンタルサーバー 高速・高機能・高安定性の【エックスサーバー】
※ご利用中のサーバー会社にて独自SSLの利用方法を確認してください。
共用SSLはなに?
独自SSLと共用SSLと混乱される方もいらっしゃるかもしれません。
共用SSLとは、サーバー会社が代わりに取得した「1つのサーバー証明書を複数のユーザーと共有する」ものです。共有しているので、信頼性も低くなります。
共用のため「独自ドメイン」には対応していません。独自ドメインのWEBサイトでは「独自SSL」を取得する必要があります。
ちなみにエックスサーバーで共有SSLを使うと「https//ドメイン名.ssl-xserver.jp/」というURLになります。
wwwの有り無し
サーバー証明書の申請で、「wwwあり」「wwwなし」は慎重に選択してください。
wwwありのURLなのに「wwwなし」でサーバー証明書を取得してしまうと、その証明書は「WWWなし」のドメインに対する証明書なので「WWWあり」のドメインには使えません。
SNI SSLとIPアドレスベースの選択について
SNI SSLとIPアドレスベースの選択はどちらにしたらいいかも迷いますよね。SNI SSLかIPアドレスベースかは「ブラウザ」に関係しています。
古いブラウザではSNI SSLが対応していません。ですがIPアドレスベースには、ほとんどのブラウザ(ガラケーも含む)対応しています。
ブラウザが対応していないと、ブラウザとサーバーでの通信を暗号化することができませんので、心配な方はIPアドレスベースを選択しておくのが無難でしょう。
サーバー証明書の発行とサーバー対応を待つ
エックスサーバーの場合、SSL発行元での審査が完了し、SSL証明書が発行さると、エックスサーバーがサーバーへのインストール作業を行ってくれます。
エックスサーバーがインストール作業を終わったら、WEBサイト側のSSL化の作業を進めましょう。
内部リンクを差し替える
ページ内にHTTPSとHTTPのURLが混在していると「SSL化」が不完全な状態となり、「安全ではない他のリソース・・・」や「安全ではないコンテンツ」といった警告が表示されてしまいます。
※ブラウザのURL欄でhttps:が緑色になっていない
そのため、全てのページでhttpsに最適化(https URLへの差し替え)を行う必要があります。これが一番手間がかかって大変です。WEBマスターの手帳でも地道な作業でした。
リンクは全てチェックしましょう。ページを移動するためのリンクだけでなく、画像(メディアファイル)へのリンクなども確認が必要です。
Search Regex(プラグイン)
過去に投稿した記事の内容で「任意のテキストを指定したテキストへ一括置換する」ことができるプラグインです。
WEBマスターの手帳では、Search Regexを使って「https://homepage-reborn.com/」を「//homepage-reborn.com/」へ一括置換えしました。
サイドバーなど「post」以外は置き換わらないので、手作業で修正が必要です。
.htaccessで301リダイレクト
httpで接続してきたユーザーがhttpsにリダイレクトされるように「301リダイレクト」を設定します。
.htaccessに以下のコードを追加(「ドメイン名と差し替え」をドメインに差し替えてください)します。
ということで、HTTPからHTTPSへの301リダイレクトが適切に実装できているのであれば、http:// を使った外部サイトからのリンクをわざわざ https:// に更新する必要はありません。
引用元:HTTPS移行後に外部リンクのURLを https:// に変更する必要はない | 海外SEO情報ブログ
WordPressのサイトアドレスを変更する
WordPressの設定から「WordPress アドレス (URL)」と「サイトアドレス (URL)」をhttps:~へ変更します。
GoogleアナリティクスやSearch Consoleを修正する
最後にSSL化に伴いURLが変わったので、GoogleアナリティクスとSearch Consoleでの修正もしておきましょう。
Googleアナリティクスの設定をhttpsへ変更する
Googleアナリティクスは、SSL対応しているので、URLの修正をしないでもデータ収集はできますが、念のため修正しておきましょう。
Search Consoleで新たにhttpsのURLでサイトを追加する
サイトが複数のプロトコル(http:// と https://)に対応している場合、それぞれを別のサイトとして追加する必要があります。
引用元:ウェブサイト プロパティを追加する – Search Console ヘルプ
SSL化はやって損はない
WEBサイトのSSL化は、確かに手間がかかるので、作業としては大変だと思います。
ですが、SSL化をしておくことで得られるメリットは、大変さやデメリットを十二分に超えるでしょう。SSL化を検討しているWEB担当者さんは、ぜひとも取り組んでみてください!