HTTPで稼働しているWordPressサイトを「常時SSL、HTTP/2化」する方法(準備編)とにかく速いWordPress(15)(1/3 ページ)

エンタープライズ用途での利用が増えている「WordPress」の高速化チューニングテクニックを解説する本連載。今回は、既にHTTPで稼働している一般的なWordPressサイトを、常時SSL、HTTP/2化する方法を解説します。

» 2017年02月06日 05時00分 公開
[中村けん牛プライム・ストラテジー]

連載バックナンバー

 前回は商用SSLサーバ証明書を用いて、前々回は無償で利用できるSSLサーバ証明書Let's Encryptを用いて、最初から「常時SSL、HTTP/2化」を済ませた新規WordPressサイトを構築する方法を解説しました。

 しかし、既にWordPressサイトを運用している人も多いでしょう。今回から2回に分けて、「既にHTTPで稼働しているWordPressサイト」を対象に、KUSANAGI上で常時SSL、HTTP/2化する方法を解説していきます。

 「常時SSLとは何か」の基礎知識と、「なぜ、Webサイトの常時SSLとHTTP/2化が必要なのか?」の背景や理由については、バックナンバー『KUSANAGI応用テクニック 常時SSLとHTTP/2の導入方法』で解説しました。併せてご覧ください。


ステップ1:KUSANAGI以外の環境で稼働しているHTTPのWordPressサイトを、KUSANAGI環境へ移行する

 常時SSL、HTTP/2化したいWordPressサイトがKUSANAGI「以外」で稼働している環境では、KUSANAGIにHTTPのままマイグレーション(移行)してから、常時SSL、HTTP/2化の処理を行います。

 既にKUSANAGI環境で稼働しているならば、この手順を飛ばして「ステップ2」へ進んでください。

 では、KUSANAGIにWordPressサイトを移行しましょう。今回は移行の前後を以下の設定にすると仮定して解説します(表1)。

表1 KUSANAGIへの移行
移行元 移行先(KUSANAGI)
URL http://example.com http://example.com
IPアドレス 192.0.2.1 203.0.113.1
ドキュメントルート /var/www/html /home/kusanagi/example.com/DocumentRoot
WordPressのインストールディレクトリ /var/www/html /home/kusanagi/example.com/DocumentRoot
wp-config.phpの場所 /var/www/html/wp-config.php /home/kusanagi/example.com/wp-config.php
データベースのホスト名 localhost localhost
データベース名 example example
データベースのユーザー名 wpuser exampleuser
データベースのパスワード pass Password123!

 まず、移行元の環境で移行に必要なデータを準備します。一般的にWordPressの移行には、「データベースのダンプファイル」「ドキュメントルート内のファイル」「wp-config.php」の3つのファイル群が必要となります。

1:データベースのダンプファイルを用意する

 移行元のシェルにログインして(場合によっては、管理者ユーザーになってから)、次のコマンドでダンプファイルを作成します。

cd /var/www
mysqldump -u wpuser -p -h localhost example > example.sql
移行元でデータベースのダンプファイルを作成するコマンド

2:データを1つのファイルにまとめる

 (1)で、データベースのダンプファイルを/var/www内に作成しました。続いて以下のコマンドで「/var/www/example.sql」とwp-config.phpを含むドキュメントルートの「/var/www/html」を1つのファイルにまとめます。

cd /var
tar czvfp www.tar.gz www
作成されたデータベースのダンプファイルとドキュメントルートを1つのファイルにまとめる

3:データをKUSANAGIに転送する

 移行先としてKUSANAGI環境を用意します。連載バックナンバー「“いきなり1000倍高速”WordPress仮想マシン『KUSANAGI』は、実際にどれだけ速いのか」を参照し、「KUSANAGIのプロビジョニング」まで済ませます。今回は移行ですので、「KUSANAGIへのWordPressのインストール方法」まで実行する必要はありません。

 この時点では、移行元のWordPressサイトがまだ稼働している状態です。DNSの切り替えはまだ行わず(切り替え準備として、TTLを5分ほどと短めに調整しておくとよいでしょう)、ホスト名の解決はクライアント機のhostsファイルなどで解決してください。「KUSANAGIのプロビジョニング」では、前述した表1の移行先(KUSANAGI)で計画したプロファイル名(ドキュメントルートの一階層上のディレクトリ名=example.com)、URL、データベース名、データベースのユーザー名、データベースのパスワードを用いて進めていきます。なお、ここではHTTPでの移行を先に行いますので、プロビジョニング時の「SSL」および「Let’s Encrypt」の設定はスキップしてください。

 「KUSANAGIのプロビジョニング」を済ませたら、移行元のコンソールに戻ってscpコマンドで手順(2)で作成したファイルをKUSANAGI環境へ転送します。

 なお、移行先のKUSANAGI環境では「22番ポート」で受け入れますので、移行元のIPアドレスからの22番ポートでの接続を一時的に許可する設定を行っておいてください。AWSなどのクラウドプラットフォームで稼働させる場合は、管理ポータルのセキュリティ設定の調整が必要になる場合もあります。また、KUSANAGI内のTCPラッパー(/etc/hosts.allow、/etc/hosts.deny)で22番ポートへのアクセスを制限している場合も、移行元のIPアドレスを許可しておきます。

scp www.tar.gz kusanagi@203.0.113.1:/home/kusanagi/
作成したファイルをKUSANAGI環境へ転送する
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。