HTTPで稼働しているWordPressサイトを「常時SSL、HTTP/2化」する方法(準備編):とにかく速いWordPress(15)(1/3 ページ)
エンタープライズ用途での利用が増えている「WordPress」の高速化チューニングテクニックを解説する本連載。今回は、既にHTTPで稼働している一般的なWordPressサイトを、常時SSL、HTTP/2化する方法を解説します。
前回は商用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)。
移行元 | 移行先(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
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/
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 容易にWebサービスを高速化できるNginxを使いこなすための秘訣とは
高速で軽量なOSSのWebサーバとして注目されている「Nginx」。使いこなすための課題や有効なアーキテクチャ構成などをサイボウズでの導入事例と共に明かす。 - 高速・軽量・高機能……Nginxの基礎知識
処理能力の高さなどを理由に、近年、大規模サイトを中心に急速にシェアを拡大しているWebサーバー「Nginx」。この連載では、その特徴と魅力を分かりやすく紹介します。 - WordPress自体のチューニングが必要な理由と高速化の基本的な考え方
企業のCMSサイトやオウンドメディアなどエンタープライズ用途での利用が増加しているWordPressの高速化について解説する連載。初回は、WordPressの高速化が求められる背景や、WordPress高速化の基本的な考え方であるページのロード時間とその構成要素、1秒当たりの同時アクセス数について解説します。