お名前.com VPS メモリ2G プランに Nginx で WordPress を構築するメモ、第8回目。前回は PHP をインストールし、APC、memcached など設定するところまでやりました。
-
お名前.com VPS にNginxとPHP-FPMをインストール
お名前.com VPS メモリ2G プランに Nginx で WordPress を構築するメモ、第9回目。前回はさくら ...
続きを見る
今回は、さくらレンタルサーバで稼働していた WordPress を お名前.com VPS に引越して Apache で動作させるところまでを紹介します。最終的には Nginx で WordPress を動作させるので無駄な作業に思えますが、WordPress は Apache での動作を前提としているプラグインも多く、Apache で環境を作っておくと Nginx で問題が起きた時の切り分けがしやすくなります。
目次
- バックアップの前にキャッシュ系プラグインを無効に
- WordPress をフルバックアップ
- WordPress 用データベースとログインユーザの作成
- WordPress のバックアップを復元
- VirtualHost の設定
- SSL の設定
- クライアント PC の hosts ファイルを編集して VPS にアクセス
バックアップの前にキャッシュ系プラグインを無効に
さくらレンタルサーバで稼働している WordPress をバックアップする前に、問題を起こしがちなキャッシュ系プラグインを無効にしておきます。このサイトの引越しの時に無効にしたプラグインは以下の通り。
- W3 Total Cache
- DB Cache Reloaded Fix
- 001 Prime Strategy Translate Accelerator
- Head Cleaner
CloudFlare も利用していたので、引越しの1週間くらい前に無効にしておきました。
WordPress をフルバックアップ
プラグインを停止したらレンタルサーバで稼働している WordPress を完全バックアップします。以下の記事で紹介している方法で日々のバックアップを取れば、引越しを見据えて日々のバックアップも取れてオススメです。
BackWPupでWordPressをDropBoxに完全バックアップ
引越しの時だけバックアップが取れれば良い方は以下のようなコマンドで。
$ tar -zcf wordpress.tar.gz path-to-wordpress
$ mysqldump -u ユーザ名 -p WordPressデータベース名 --quick > wordpress.sql
WordPress 用データベースとログインユーザの作成
MySQL に root でログインし、WordPress を稼働させるためのデータベースと作業ユーザを作成します。
mysql> CREATE DATABASE データベース名 CHARACTER SET UTF8;
WordPress 用のユーザを作成します。
mysql> GRANT SELECT,INSERT,DELETE,UPDATE,CREATE,DROP,ALTER,INDEX ON データベース名.* TO ユーザ名@localhost IDENTIFIED BY "パスワード";
面倒な方は以下でも構いません。
mysql> GRANT ALL PRIVILEGES ON データベース名.* TO ユーザ名@localhost IDENTIFIED BY "パスワード";
作成したユーザの情報を確認します。
mysql> SHOW GRANTS FOR ユーザ名@localhost
WordPress のバックアップを復元
WordPress のファイルをバックアップから復元して、パーミッションの設定を行います。
# mkdir /var/www/wordpress
# cd /var/www/wordpress
# tar -zxf wordpress.tar.gz
# chown -R apache:apache *
# chown apache:apache .htaccess
MySQL のデータベースを復元します。
# mysql -u ユーザ名 -p wordpress < wordpress.sql
wp-config.php を引越し先の DB の情報に更新します。
define('DB_NAME', 'データベース名');
define('DB_USER', 'ユーザ名');
define('DB_PASSWORD', 'パスワード');
define('DB_HOST', '127.0.0.1');
バックアップファイルはドキュメントルートから移動しておきます。
# mv wordpress.tar.gz ~/
# mv wordpress.sql ~/
VirtualHost の設定
Apache の VirtualHost はこんな感じ。
/etc/httpd/conf/httpd.conf
### Section 3: Virtual Hosts
NameVirtualHost *:80
<VirtualHost _default_:80>
ServerName XXX.XXX.XXX.XXX
DocumentRoot "/var/www/html"
</VirtualHost>
<VirtualHost *:80>
ServerName vXXX-XXX-XXX-XXX.myvps.jp
DocumentRoot "/var/www/html"
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
DocumentRoot "/var/www/wordpress"
<Directory "/var/www/wordpress">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
SSL の設定
/etc/httpd/conf.d/ssl.conf
##
## SSL Virtual Host Context
##
<VirtualHost *:443>
DocumentRoot "/var/www/wordpress"
ServerName example.com
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/pki/tls/certs/example.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/example.com.key
</VirtualHost>
VirtualHost 以外の Apache の設定や SSL 環境の作成については以下の記事を参考にどうぞ。SSL 証明書の CommonName はご自身のドメインに置き換えてください。
お名前.com VPS にApacheをインストールしてSSL環境も整える
管理画面を SSL 化したい場合は、wp-config.php に以下の設定を追記します。JS, CSS や画像のパスが https になります。
/var/www/wordpress/wp-config.php
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
クライアント PC の hosts ファイルを編集して VPS にアクセス
レンタルサーバからの引越し期間中、引越し元の WordPress と VPS の WordPress が並行稼動する期間が出てきます。VPS 側の動作確認をしたいけど、DNS は引越し元のレンタルサーバを向いている。取得している独自ドメインはひとつだけ。そんなときは、クライアント PC の hosts ファイルに 独自ドメインの情報を設定して VPS にアクセスします。
/etc/hosts
↓VPS の IP アドレスと独自ドメインを追記
XXX.XXX.XXX.XXX example.com
独自ドメインで VPS にアクセスする方法はお名前.com のDNSを設定し、VPSに独自ドメインでアクセスするにまとめてあります。
終わりに
以上で引越しは完了です。VPS 上の WordPress でひと通りいじってみてください。記事の更新、プラグインの新規インストール、画像アップロードなど、問題ありませんか。Apache での動作に問題がなければ、この後の Nginx のインストール作業に移ります。
次回は、お名前.com VPS にNginxとPHP-FPMをインストールするところをやります。
-
お名前.com VPS にNginxとPHP-FPMをインストール
お名前.com VPS メモリ2G プランに Nginx で WordPress を構築するメモ、第9回目。前回はさくら ...
続きを見る