稼働中のWordPressをconoha VPSのKUSANAGIに移転する手順

シェアする

WordPressをconohaVPSのKUSANAGIに移転する手順です。
以下手順はコマンドを叩ける人向けの内容になっています。

今回KUSANAGIを初めて使ってみたのですが
素のWordPressと比べてどれだけ不自由になるのかなと思いましたが
ほとんど不自由になったと思う点はありませんでした。

ポイント

・KUSANAGIと言っても中身はWordPressなので恐れることはない
・素のWordPressとディレクトリ構成が少しだけ異なるがすぐ慣れる
・DB名は自動でつけられてしまうのでそのまま使用するか、自分で作り直してもOK

移行手順1. 旧サーバ側

※以下は /var/www/vhost/fse にWordPressが設置されている場合の例です。

1-1. 新サーバにリストアするために旧サーバでDBダンプを取ります。
mkdir /root/wp
mysqldump -u dbuser -p wp_fse > /root/wp/wp_fse.dump
1-2. 新サーバでプラグイン、テーマ、画像、その他ファイルをコピーするためにサイト全体を圧縮してバックアップします。
cd /var/www/vhost
tar zcvf fse.tar.gz ./fse
mv fse.tar.gz /root/wp/
1-3. WinSCPなどの転送ソフトでDBダンプとサイト全体のバックアップの圧縮ファイルをローカルPCにダウンロードします。

移行手順2. 新サーバ側

※以下は conoha VPSで「かんたんKUSANAGI」をサーバ追加済みが前提となります。

2-1. KUSANAGI managerにログインしてサイトを作成します。

DNSの設定をしろと表示されますが
この時点ではまだ旧サーバで稼働中なので設定変更する必要はありません。

「/home/kusanagi/」の下に「fse.tokyo」が作られました。
wp-config.phpは直下にあるのですが
ドキュメントルートは「DocumentRoot」と一段下となっています。
DocumentRootの下はいつものWordPressと変わらないようです。

ll /home/kusanagi/fse.tokyo/
drwxrwxrwx 5 kusanagi kusanagi 4096  5月  5 17:08 DocumentRoot
drwxr-xr-x 4 kusanagi kusanagi 4096  5月  5 14:02 log
drwxr-xr-x 2 kusanagi kusanagi 4096  3月 29 14:58 settings
drwxr-xr-x 2 kusanagi kusanagi 4096  5月  5 14:03 tools
-rw-rw-r-- 1 kusanagi www      4152  5月  5 17:11 wp-config.php
ll /home/kusanagi/fse.tokyo/DocumentRoot/
-rw-r--r--  1 kusanagi kusanagi   405  2月  6  2020 index.php
-rw-r--r--  1 kusanagi kusanagi 19915  1月  1 09:19 license.txt
-rw-r--r--  1 kusanagi kusanagi 10082  4月 21 09:00 readme.html
-rw-r--r--  1 kusanagi kusanagi  7165  1月 21 10:37 wp-activate.php
drwxr-xr-x  9 kusanagi kusanagi  4096  3月 29 14:58 wp-admin
-rw-r--r--  1 kusanagi kusanagi   351  2月  6  2020 wp-blog-header.php
-rw-r--r--  1 kusanagi kusanagi  2328  2月 17 22:08 wp-comments-post.php
-rw-r--r--  1 kusanagi kusanagi  3873  3月 25 09:27 wp-config-sample.php
drwxr-xr-x  8 kusanagi kusanagi  4096  5月  5 17:11 wp-content
-rw-r--r--  1 kusanagi kusanagi  3939  7月 31  2020 wp-cron.php
drwxr-xr-x 25 kusanagi kusanagi 12288  4月 21 09:00 wp-includes
-rw-r--r--  1 kusanagi kusanagi  2496  2月  6  2020 wp-links-opml.php
-rw-r--r--  1 kusanagi kusanagi  3313  1月 11 04:28 wp-load.php
-rw-r--r--  1 kusanagi kusanagi 44994  4月  5 03:34 wp-login.php
-rw-r--r--  1 kusanagi kusanagi  8509  4月 14  2020 wp-mail.php
-rw-r--r--  1 kusanagi kusanagi 21125  2月  2 09:10 wp-settings.php
-rw-r--r--  1 kusanagi kusanagi 31328  1月 28 06:03 wp-signup.php
-rw-r--r--  1 kusanagi kusanagi  4747 10月  9  2020 wp-trackback.php
-rw-r--r--  1 kusanagi kusanagi  3236  6月  9  2020 xmlrpc.php
2-2. DB名を変更したい場合は変更します。

サイトの作成をおこなうと自動的にDBとDBユーザーが作成されますが
管理しにくいランダムな名前になるため自分で作り直すことも可能です。

ただし、KUSANAGI manager上のDB名とDBユーザーの表示には反映されないので
それが気持ち悪いという場合は作られたまま使用したほうが良さそうです。

DBユーザーを作成します。

mysql -u root -p
> GRANT ALL PRIVILEGES ON *.* TO dbuser@localhost IDENTIFIED BY 'password';
> exit

DBを作成します。

mysql -u dbuser -p
> CREATE DATABASE wp_fse;
> exit

wp-config.phpに更新権限をつけてからDB接続情報を変更します。

chmod 664 /home/kusanagi/fse.tokyo/wp-config.php
vi /home/kusanagi/fse.tokyo/wp-config.php
/** WordPress のためのデータベース名 */
define('DB_NAME', 'wp_fse');

/** MySQL データベースのユーザー名 */
define('DB_USER', 'dbuser');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'password');

wp-config.phpの権限を元に戻しておきます。

chmod 440 /home/kusanagi/fse.tokyo/wp-config.php
2-3. WinSCPなどの転送ソフトでDBダンプとサイト全体のバックアップをアップロードします。

2-4. DBをリストアします。
mysql -u dbuser -p wp_fse < /root/wp/wp_fse.dump
2-5. サイト全体のバックアップから必要なファイルをコピーします。

サイト全体のバックアップの圧縮ファイルを解凍してから
プラグイン、テーマ、画像、その他ファイル(広告用ads.txt、ファビコン、GoogleSearchConsole用のHTMLなど)をコピーします。
プラグイン、テーマは新しくインストールし直してもいいですが
設定しなおしたりするのが面倒なのでコピーしたほうが楽です。

cd /root/wp
tar zxvf fse.tar.gz
cp -r /root/wp/fse/wp-content/plugins/all-in-one-seo-pack /home/kusanagi/fse.tokyo/DocumentRoot/wp-content/plugins/
cp -r /root/wp/fse/wp-content/themes/simplicity2          /home/kusanagi/fse.tokyo/DocumentRoot/wp-content/themes/
cp -r /root/wp/fse/wp-content/uploads/*                   /home/kusanagi/fse.tokyo/DocumentRoot/wp-content/uploads/
cp    /root/wp/fse/ads.txt                                /home/kusanagi/fse.tokyo/DocumentRoot/
cp    /root/wp/fse/favicon.ico                            /home/kusanagi/fse.tokyo/DocumentRoot/
cp    /root/wp/fse/google1234567890.html                  /home/kusanagi/fse.tokyo/DocumentRoot/

移行手順3. ローカルPCでの確認

3-1. hostsでドメインを新サーバに向けます。

旧サーバで稼働中のブログは止めずに作業したいのでhostsを変更します。
WordPressは設定されているURLとアクセスするURLが異なっていると
設定されているURLに飛ばされてしまうので
それを回避するためにhostsを変更してドメインを新サーバのIPアドレスに向けます。
これで旧サーバのブログは稼働したまま作業ができます。

(Windows10の場合)
C:\Windows\System32\drivers\etc\hosts

(Macの場合)
/etc/hosts

111.222.333.444 fse.tokyo
3-2. データベースの更新

ブラウザで旧サーバと同じURLで管理画面にアクセスすれば新サーバに接続できます。
下記のような「データベースの更新が必要です」というダイアログが表示されたら
「WordPressデータベースを更新」を押して問題ありません。

3-3. データベースの更新が完了したら管理画面にログインして管理画面とフロントをひととおり動作確認します。

移行手順4. DNS切り替え

4-1. DNSを切り替えてドメインを新サーバのIPアドレスに向けて新サーバへの移行完了です。

以下はムームードメインのムームーDNSの場合です。

DNSが浸透して新サーバにつながるようになれば移行完了です。

作業おつかれさまでした。

上記手順でスムーズに移行できていたら幸いです。