今回はWordPressサイトのSSL化を行っていきます。
SSL化にはプラグインを使用する方法と、利用しない方法がありますが、今回はプラグインを使用しない方法を解説します。
※プラグインを使用した方法は別途解説します
目次
なぜSSL化が必要か
・「常時SSL化」とは、Webサイトのすべての通信をSSLに対応させ、常にサーバーとブラウザ間の通信を暗号化させることを言います。
・SSLは、インターネット上で送受信される個人情報や決済情報などの重要なデータを、悪意ある第三者から守る有効手段です。
・最大の理由は、GoogleがSSL化を検索エンジンの評価対象にするようになったこと、「SSL対応されていないWebサイ」に対して、ブラウザ上で警告を表示するようになったことにあります。
・SSL導入により、ユーザに安心してウェブサイトを利用してもらうことで、リスク回避のみならず、機会損失を回避することが可能になります。
事前準備
・作業に入る前に、以下の対応を行います。
WordPressの最新化
・WordPressの本体、プラグイン、テーマなど、更新可能なものは全て最新化しておきます。
・WordPress管理画面の「ダッシュボード」→「更新」に表示される更新を行い、Webサイトを最新の状態にしておきます。
バックアップ
・作業中にトラブルが発生してもすぐに戻せるように、WordPress全体のバックアップを実施しておきます。
(バックアップの復元を考慮すると「All in One WP Migration」を使用したバックアップが個人的には便利と思いますが、使い慣れた方法で問題ありません)
WordPressのプログラムファイルをFTPでダウンロードしたり、データベースをphpMyAdminなどでエクスポートしておきます。
SSLサーバー証明書の購入/設定
・常時SSL化にあたり必要なSSLサーバー証明書を購入(無料もあり)し、設定を確認します。
※設定についてはサーバーのマニュアル等を参照ください
SSL化作業
WordPressの管理画面の設定
1.WordPress管理画面「ツール」→「一般」を選択
2.「WordPress アドレス (URL)」と「サイトアドレス (URL)」のURLを「http://」から「https://」に変更し、保存します。
3.ログアウトになるので、再度、ログインします。
内部リンクの置換作業
記事や固定ページ内で使用している内部リンクの置換作業を行います。
内部リンク先がhttpのままだとリンク切れになってしまうので、httpsに置き換えます。
置換処理はプラグインが便利です。使用するプラグインは「Better Search Replace」です。
※内部リンクの置換作業だけなら、「Search Regex」でも事足りますが、データベースをテーブル単位で置換できるので、漏れなく置換するならこちらの方が便利です。
1.「Better Search Replace」プラグインをインストールしたらWordPress管理画面、サイドバーより「ツール」→「Better Search Replace」を選択します。
2.「検索」に「http://」から始まるアドレスを入力
3.「次と置換」に「https://」から始まるアドレスを入力
4.念のため「dry run(リハーサル)を実行しますか?」のチェックをONにし、「検索/置換の実行」ボタンをクリック
5.画面上部に検索結果が表示されるので、必要に応じ確認
6.問題なければ、「dry run(リハーサル)を実行しますか?」のチェックをOFFにし、「検索/置換の実行」ボタンをクリックで置換が実行される
.htaccessファイルの編集
.htaccessに以下の記述を追加します
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
以上で、作業は完了です。
動作検証
最後に動作検証を行います。
リンクエラーチェック
リンク切れを自動でチェックしてくれるプログラムを利用し、リンク切れの確認を行います。
有料、無料、ブラウザ上でできるもの、インストールする必要があるものなど、様々な形式がありますが、一番簡単な無料で利用できるブラウザ版をここでは使用します。
Dead-link-checker.com
リンクはこちら
・上記サイトにアクセスし、アドレスを入力することでリンク切れの確認ができます。
エラーチェック(Mixed Content)
HTTPS Checker
・HTTPS Checkerというツールをインストールすることでチェックができます。
※詳細については別の機会に紹介します。