「WordPressサイトをhttps化したいけどどうやったらいいの?」
WEBサイトやブログの運営を行っている上で最近何かと話題になっているhttps化、皆さんはすでに実装済でしょうか?
httpsにすることをSSL化ともいいますが、GoogleがSSL化していないサイトに対して警告を送るようになったことから、慌てて対応しようとしている人も多いと思います。
今回はhttpsがどういったものなのか、そしてWordPressサイトでどうやってhttps化させるかをご紹介いたします。
難しそうに聞こえますが、実は簡単です。
この記事を読んで、順序どおりに進めればすぐにでもhttpsにすることができるでしょう。
httpsとは?
httpsを説明する前に、HTTPについて少しばかり知る必要があります。
HTTPとは、Hyper Text Transfer Protocolの略で、ウェブの通信をするためのシステムです。
我々はHTTPというシステムを用いて、ウェブで検索をしたりブラウザでゲームをしたりしているのです。
HTTPで通信をする際には、http://から始まるアドレスを使います。
しかし問題なのが、HTTPという通信は情報を保護する仕組みがありません。
もしクレジットカード情報や個人情報を入力して送信してしまうと、情報が漏れてしまう可能性があるのです。
そこで、安全なやりとりを行うために「SSL/TLS」が使用されます。
「SSL/TLS」を使用することで情報が暗号化され、安全に通信を行うことができます。
https://の「s」はセキュアの略で、危ないHTTP通信を「SSL/TLS」で守っているという意味なのです。
httpsにするべき理由
httpsとhttpの違いはサイトとそれを利用するユーザー間でのやりとりが暗号化されているかいないかの違いです。多くのサイトで使われているhttpはサイトデータを一切暗号化させずそのまま情報をユーザーに送っています。
これがhttps化されると、サイトデータが一度暗号化されて送信されます。そして、ユーザー側に受信されると復号化され、サイトのデータが表示されます。これはサイトに訪れてくれるユーザーにとっても良い対応と言えます。
httpsにしないとGoogleからセキュリティー観点の警告がくる
Webサイトやブログを運営しており、自サイトにGoogle Search Consoleを導入している場合、下記のような警告メールをもらった人は多いのではないでしょうか?
要約すると、『2017年の10月までにサイトがhttps化されていない場合、特定の条件でGoogleChrome限定で「保護されていません」という表示をします。』という警告です。特定の条件というのはサイト内のお問い合わせページやブログでのコメント欄等を使用してユーザー側から情報が送信される時にそのページがhttpsになっていない時などです。なぜこんな限定的な条件なのかと言うと、httpのような保護されていない状態である場合、ハッカーにハッキングされてユーザー・サイト間でやり取りしている情報を全て取得されてしまう可能性があるからです。
サイトとしての信頼性
サイトのhttps化を行うことで、サイトデータ・ユーザーの個人情報が暗号化され保護されると共に、サイトとしての信頼性も向上します。
2014年の時点でGoogleの公式からサイトがhttps化されていることも評価の1つとして含まれると発表されています。ただし、評価としての割合は他と比べると低く、2017年8月の現段階で1割以下の影響しかないようです。上記項目で説明したようにGoogleからセキュリティー観点に関する警告メールがきたことから、今後評価への影響が現在から増加する可能性は高いと考えられます。
そのため、早い段階でWEBサイト・ブログのhttps化を行っておくことをおすすめいたします。
WordPressを簡単にhttps化する方法まとめ
今回はサイトのhttps化としてWPサイトでのやり方をご説明いたします。WordPressサイトならhttps化させるためのプラグインなどもありますので、よりhttps化しやすいです。
具体的な作業内容
それではWPサイトのバックUP~URLの正規化・リダイレクト方法まで通して紹介してきます。特定の作業はまとめて実行してくれるプラグインもあるので、そちらの紹介もします。ページ数の多いサイトならばプラグインを使ったほうがより効率的になります。
バックアップ取得
まずは、サイトをhttps化する前に、操作を間違える等何かしらのキッカケでサイトが消えてしまってもリカバリーできるように対策を行いましょう。この作業を「バックアップ」と呼びます。FTTPソフトを繋げて外部からバックアップをとる方法もありますが、WP自体データベースも含めてかなりの容量があるため時間とそれなりの空き容量が必要になってきます。
そこで、プラグインBackWPupを使いデータベースのみをバックアップします。手順はそこまで難しくなく、簡単にデータベースのバックアップをとることが可能です。
- WP管理画面内左サイドメニューの「プラグイン」内「新規追加」をクリック
- 画面右上の検索窓から「BackWPup」と入力し、BackWPupが出てきたら「今すぐインストール」をクリック
- インストール完了後、「インストール済みプラグイン」ページにいくとBackWPupが追加されているので、BackWPupの「有効化」をクリック
- すると、左サイドにBackWPupのメニューが追加されるので、メニュー内のダッシュボードをクリック
- ダッシュボードページ内をスクロールしていくと右下に「1クリックバックアップ」の項目が出現し、「データベースのバックアップをダウンロード」というボタンが出てくるのでクリック
- 任意の場所にデータベースのバックアップをダウンロードして完了
自分で分かる場所に「WPバックアップ」のようなフォルダーを作り保存すると後々バックアップを行う際に探すのに困りません。サイトのページ数等によっては容量が膨大になる可能性があるので、それなりに容量を空けておいたほうが効率的に作業をおこなえます。
サーバーでSSLの設定
さて、次に行うのがサーバー側でのSSLの設定です。今回は、有名なサーバーであるロリポップとエックスサーバーの対応方法をご説明します。
(SSLや高速化もやりやすいWordPressのおすすめレンタルサーバーついては「WordPressならこれが安心!おすすめのレンタルサーバーと選ぶ際のポイント」を参考にしてください。)
ロリポップでのhttps対応
1.ロリポップにログイン
まずは、ユーザー専用ページにログインしましょう。(ログインURL:https://user.lolipop.jp/)
2.独自SSL証明書を発行
左のバナーから「独自SSL証明書」を選択し、クリック。
SSL対応させたいドメインを選択し、「独自SSL(無料)を設定する」をクリック。
「SSL設定作業中」が「設定できません」に変われば、設定完了です。
エックスサーバーでのhttps対応
1.エックスサーバーにログイン
まずは、サーバーパネルにログインしましょう。(ログインURL:https://www.xserver.ne.jp/login_server.php/)
2.SSLを申し込む
ログインしたら、ドメインの「SSL設定」をクリック。
SSL対応したいサイトを探して「選択する」をクリック。
「独自SSL設定の追加」をクリック。
設定したいドメインに間違いがないか確認して問題なければ、「独自SSL設定を追加する(確定)」をクリックし、SSL反映を待ちましょう。
WordPressのURL設定
次にWordPressサイトのURL設定を行いましょう。
まずは、管理画面左サイド内の「設定」から「一般設定」をクリックしてください。一般設定を見ていくと「WordPress アドレス (URL)」と「サイトアドレス (URL)」というURLに関する項目が二つ縦並びにあります。
特に何も触っていなければ、アドレスはどちらも「http」のままになっているはずです。https化する場合はこのアドレスの「http」部分を「https」に書き換えてください。後は一番下にある「変更を保存」ボタンを押せばWordPressのURL設定完了です。
内部リンクをすべてhttpsに書き換える
WordPressのURL設定を変更すると、サイト内の全記事ページのURLが変更されます。
リンク切れで放置してしまうと、サイトを訪れたユーザーの離脱に繋がりやすくなりますし、ユーザビリティの問題でGoogleから評価を得られなくなってくる可能性もあります。とは言っても、ページ数がそれなりにあるサイトの場合1ページ1ページ確認して内部リンクを修正するのは大変です。
そこでサイト内の内部リンクや画像のリンクまで一括で変更してくれるプラグイン「Search Regex」が便利です。(インストール、有効化するところまではデータベースバックアップ用プラグイン「BackWPup」と同じ手順になるので割愛させていただきます。)
有効化すると管理画面の左サイドメニュー「ツール」内にSearch Regexが出てくるのでクリックしてください。
すると以下のような画面になります。
上記画像内で「Search pattern」と「Replace pattern」以外はデフォルトのままにしていください。
- 「Search pattern」には置換対象の「http」のURLを入力してください。
- 「Replace pattern」には置換後の「https」のURLを入力してください。
ここまでできたら、下部にある「Replace」ボタンを一端押してください。このボタンを押しただけではまだ置換は実行されません。「Replace」を押すと置換対象となるURLがどのように置換されるかが表示されます。
Search Regexで一度置換して保存してしまうと戻すことができなくなってしまうので、間違っていないかどうかしっかりと見直してください。確認し終わったら最後に「Replace」ボタンの隣にある「Replace&Save」ボタンを押せば、置換が実行されてデータベースが保存されます。
URLの正規化 リダイレクト設定
「http」のアドレスと「https」のアドレスはたった1文字「s」が入っているか入っていないかの違いしかありませんが、これだけでWEB上では別のアドレスだと認識されてしまいます。
ここまで、WordPress内でのアドレスを「https」に変更してきましたが、現時点では「http」と「https」両方のアドレスにアクセスできる状況になっています。
しかも、「http」のほうにアクセスすると「ページが見つかりません」という旨を示唆するエラーページが表示されてしまいます。こちらも内部リンク同様このまま放っておくと、このページにアクセスしたユーザーの離脱やGoogleからの評価を落としかねません。そこで、最後にURLの正規化をするためのリダイレクト設定を行います。
.htaccessを利用した301リダイレクト方法
通常はFTPから.htaccessファイルにアクセスし、301リダイレクトの記述をするのが正しい方法です。.htaccessファイルに、以下を記述しましょう。
[html]
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ [R=301,L]
[/html]
これを行うことで「http://example.com」というURLでアクセスすると「https://example.com」にリダイレクトされます。
同じURLであれば下層ページも自動でリダイレクトしますので、
http://example.com/01 →(301)→ https://example.com/01
などの記述は不要です。
Redirectionを利用した301リダイレクト方法
.htaccessを触るのが難しいという方はこちらがおすすめです。
こちらも「BackWPup」や「Search Regex」と同様に専用のプラグイン「Redirection」があるので、これまでと同じようにプラグインをインストールして有効化してください。
有効化するとSearch Regexと同じように管理画面左サイドの「ツール」内に「Redirection」が表示されるので設定画面から「Add new redirection」内にある「Add Redirect」ボタンの横にある歯車のボタンを押してください。
表示切り替わったら、「Source URL」にリダイレクト対象のURLを入力し、「Target URL」にリダイレクト先のURLを入力します。「HTTP code」が「301」になっていることを確認し、「Group」の項目を「転送ルール」に切り替えたら最後に「Add Redirect」ボタンを押して完了です。
すると画面上部に追加された転送ルールが表示されます。FTPを触るのが難しいという方はこちらに1URLずつそれぞれ記述しましょう。(ただ膨大なサイトでは不向きなので、数十ページ以上のサイトであれば.htaccessファイルで実装しましょう。)
※301でリダイレクトをされていることを忘れず確認してください。
もし間違えて登録してしまっても、追加されたURLにカーソルを合わせれば「Edit(編集)」や「Delete(削除)」のボタンが表示されるので、そこから編集や削除が可能です。登録後はリダイレクト対象のURLにアクセスしてきちんとリダイレクトされるかどうか確認してみてください。
面倒な方はこのプラグインを利用「Really Simple SSLを導入」
WordPressサイトのバックアップ~URLの正規化・リダイレクト方法まで一貫してお教えいたしましたが、「WordPressのURL設定」「内部リンクをすべてhttpsに書き換える」「URLの正規化 リダイレクト設定」の三つの工程を全てまとめて行っているプラグインがあります。それが「Really Simple SSL」です。
このプラグインですが、先ほどまで紹介したプラグインと少し違っていて、インストールして有効化した際にサーバー側でSSLの設定が完了していれば、それを検出してサイト全体をhttps化させるための準備を整えてくれます。サーバー側でSSLの設定を行い、Really Simple SSLを有効化すると以下のような画面が表示されます。
アフェリエイトやランキングバナー・古めのSNSボタンはプラグインでは対応できないため手動での対応となります。問題が無ければ「はい、SSLを有効化します。」ボタンを押せばhttps化が実行されます。
一度ログアウトさせられるので再度ログインし、ダッシュボードに「SSLを有効化しました」と表示されれば成功です。WPのURL設定や内部リンクのURL・リダイレクト設定まで全てhttps化されているのでそれぞれ確認してみてください。
このプラグインはプラグインが有効化されているときのみhttps化されるものなので、このプラグイン自体を切ってしまうとhttps化も解除されます。何かしらの理由で「Really Simple SSL」が使えなくなるといったことが起こる可能性もあるので、そうなる前に手動またはこれまで紹介したプラグインを使ってhttps化しておくことをおすすめします。
とりあえず手っ取り早く自サイトをhttps化したいという人にはうってつけのプラグインです。
WordPressサイトをSSL化するメリットとデメリット
WordPressサイトをSSL化するメリットとデメリットに関して、ここでは詳しく解説して行きたいと思います。
基本的にはSSL化するのがベターなのですが、場合によってはかなり設定が面倒なケースもあるので、WordPressの扱いに慣れていない初心者の方は注意が必要です。
SSL化の手順をみても理解できない場合は、出来る人に行ってもらうのも一つの手ですね。
以下からそれぞれ詳しくみて行きましょう。
WordPressサイトをSSL化するメリット
WordPressサイトをSSL化するメリットとしては、以下のような項目が挙げられます。
- WordPressを活用したサイトのセキュリティが上がる
- サイトに訪れるユーザーが安全に利用できることにより、信頼性が上がる
- Googleからの評価が上がる
- 今後サイトの表示スピードが上がる可能性がある
現在は逆にSSL化していないサイトを探す方が難しいほど、SSL化を行うのが当たり前になっています。
ただ、周りが行っているからしなければならないというのではなく、SSL化を行うことでどのようなメリットがあるのかしっかりと個人で把握してから行うことが大切です。
訳も分からず行うと思わぬトラブルになってしまう場合もあるので、必ず何故行うのかを把握した上でSSL化を行うようにしましょう。
WordPressサイトをSSL化するデメリット
逆にWordPressサイトをSSL化するデメリットとしては、以下のような項目が挙げられます。
- 利用しているサーバーによってはお金がかかる
- これまでのSNSシェアアカウントがリセットされる
- SSL化に対応していないASPのアフィリエイトタグが、利用できない場合もある
- SSL化に対応していないアクセス解析ツールなどが使えなくなる
- 利用環境によってはかなり設定が面倒になる場合もある
特にWordPressサイトの扱いに慣れていない方には、設定が難しく感じてしまい間違った設定を行う方も少なくありません。
そうならないで良いように、前述したように周りに出来る方がいるのであればお願いして設定してもらうことも大事ですね。
また、利用しているレンタルサーバーによってはコストがかかる場合もあるので、しっかりと設定手順を個人でリサーチしてから取り組むようにしましょう。
【トラブル】WordPressサイトで常時SSL化しているのに”保護されていません”と表示される
筆者もこれで悩んだ経験があります。
原因はいくつかありますが、多いのはWordPressサイトのページのどこかに、httpで始まる画像が貼り付けてあることです。
画像をhttpsのURLに新しく貼り替え直すと、解決する場合が多くあります。
httpのまま長く運用していた人には大変な作業ですが、頑張りましょう。
また、CSSを読み込むURLやJavaScriptを読み込むURLもhttpになっている可能性があるので、もし画像を貼り替えても駄目であったらチェックしてみてください。
WordPressサイトをSSL化する際によくあるQ&A
ここではWordPressサイトをSSL化する際によくある質問に関して、詳しくまとめてみました。
- WordPressサイトはSSL化しないとSEO的に不利なのでしょうか?
- エックスサーバーのSSL化にはどのくらい時間がかかりますか?
- ロリポップサーバーのSSL化にはお金がかかりますか?
- WordPressサイトの扱いに慣れてない初心者でもSSL化できますか?
これらの質問は特に多く散見された質問内容なので、是非ともこれから自身のWordPressサイトのSSL化に取り組もうと考えている方は、参考にしてみて下さいね。
それでは以下から一つずつみて行きましょう。
Q1:WordPressサイトはSSL化しないとSEO的に不利なのでしょか?
SSL化してURLを変更した方の中には、
「検索順位が下がってしまった…」
などの声も見受けられましたが、最終的には元に戻ったらしいのでそれほどSEO的には心配しなくても良いと思います。
逆にGoogleはSSL化を推奨しているのではっきりとは言えませんが、行っておいた方がSEO的にも良いかもしれません。
Q2:エックスサーバーのSSL化にはどのくらい時間がかかりますか?
エックスサーバーの場合は、SSL導入から完了まで約1時間ほどかかります。
万が一、httpへのアクセス状況が気になる方は、SSL化する作業を深夜に行うなどしてアクセス数に影響が出ないような配慮を行うと良いでしょう。
Q3:ロリポップサーバーのSSL化にはお金がかかりますか?
ロリポップサーバーでの独自SSL化は、無料で行えるようになっています。これはどのプランを利用していても無料なので、心配しないで下さいね。
また、ロリポップでのSSL化に関しては、「ロリポップでのhttps対応」の項目を参考にしてみて下さい。
Q4:WordPressサイトの扱いに慣れてない初心者でもSSL化できますか?
WordPressサイトの扱いに慣れていない方でも、SSL化は手順通りに行えばそれほど難しくありません。
当記事もそうですが、今は細かく解説されているブログ記事も多いので、比較簡単に移行できると思います。
まとめ
いかがだったでしょうか。いまサイトを立ち上げるタイミングの方にとってはhttpsは最初から行うべきものですが、数年前まではhttps対応していないことは当たり前でした。
長年運営しているサイトを正しく育てられるようにhttpからhttpsにサイトを変更しましょう。