[VCCW] VCCW + WordMove で WordPress を引っ越しした手順
WordPress のデプロイが便利すぎて感動。
[markdown]
## DNS サーバを設定する
今回はあわせて DNS サーバの移行も行った。
### DNS サーバを移行する
ムームーDNSに移行。
カスタム設定で A, MX レコードを設定。
> [ムームー DNS に Google Apps 向けの設定をする | deadwood](https://www.d-wood.com/blog/2016/02/22_7806.html)
メールサーバは、Google Apps のまま。
ウェブサーバは現行サーバの IP をひとまず指定。
– メールは Google Apps の IP を設定。
– www.d-wood.com として現行サーバの IP で設定。
### 移行先サーバの設定
移行先サーバの設定として、動作確認用サブドメインを作成しておく。
– www.d-wood.com として移行先サーバの IP で設定。
### 旧 DNS サーバの廃止
事前に新しい DNS サーバに上記の設定を追加。
しばらく後に、旧DNSサーバを廃止した。
## サーバを準備する
### サブドメインの設定
移行先サーバの「さくらのレンタルサーバ」にサブドメインを設定。
コントロールパネルから設定を行う。
> [SAKURA レンタルサーバにサブドメインを設定する | deadwood](https://www.d-wood.com/blog/2016/02/24_7810.html)
以下のディレクトリを作成する。
– /www/stg … Staging 環境として www.d-wood.com で運用。
– /www/www … Production 環境。サーバ移行後の www.
### SSH の設定
VCCW + WordMove 用に SSH ログインを設定する。
> * [SAKURA レンタルサーバに SSH 公開鍵認証を設定する | deadwood](https://www.d-wood.com/blog/2016/02/23_7804.html)
### Basic 認証の設定
必要に応じて Basic 認証を用意する。
> [SAKURA レンタルサーバで Basic 認証などのアクセス制限をする | deadwood](https://www.d-wood.com/blog/2016/02/25_7812.html)
### MySQL の設定
MySQL DB を新規作成する。
> [VCCW + WordMove でローカルの WordPress をサーバと同期する | deadwood](https://www.d-wood.com/blog/2016/02/26_7816.html#i)
それぞれの環境用に準備。文字コードは「UTF-8」。
– Staging 環境
– Production 環境
## Staging 環境へテスト移行する
### 現行サイトと Staging 環境を同期させる
まず WordMove を利用して現行の WordPress をローカルの VCCW 環境と同期する。
> [VCCW + WordMove でローカルの WordPress をサーバと同期する | deadwood](https://www.d-wood.com/blog/2016/02/26_7816.html)
サンプルを参考に Movefile を設定。
– Production … 現行サイトの情報を設定。
– local … VCCW の設定。変更なし。
– Staging … 前項までに準備した stg. を設定。
同期を開始する。
`wordmove` コマンドは、VCCW 上の `/vagrant` 以下で実行する。
“`prettyprinted
% vagrant ssh
:
$ cd /vagrant
“`
Production から local に `wordmove pull` でデータを持ってくる。
“`prettyprinted
$ wordmove pull -e production –all
“`
local から staging へ `wordmove push` でデータを送る。
“`prettyprinted
$ wordmove push -e staging –all
“`
以上で完了。
### Staging 環境で動作確認を行う
本番移行前に、Staging 環境へ同期したデータでの動作確認を行う。
今回のケースでは、以下の3点の留意事項があった。
– 管理画面にログインし、パーマリンク設定パネルからパーマリンク構造を保存し直す必要があった。(ex. [サイトルートに表示する](https://www.d-wood.com/blog/2012/08/24_2423.html))
– 管理画面へのログインアドレスが SiteGuard WP Plugin で変更されているため、注意が必要。(ex. [SiteGuard WP Plugin: 日本語対応 WordPress 用セキュリティプラグイン](https://www.d-wood.com/blog/2014/10/24_7109.html))
– Basic 認証の再設定。
## 新サーバへ移行する
### Production 環境を同期させる
Movefile の Production 環境を、移行先の新サーバ情報に変更する。
– Production … 新サーバの情報を設定。
念のため dryrun で接続確認。
“`prettyprinted
$ wordmove push -e production –all -s
“`
local から Production に `wordmove push`。
“`prettyprinted
$ wordmove push -e production –all
“`
以上で完了。
### Production 環境の公開前準備と確認
DNS 切替前に設定・確認ができるよう、ローカル Mac の /etc/hosts に新サーバのドメインとIPを設定する。
“`prettyprinted:/etc/hosts
“`
ブラウザで接続し以下を完了する。
– WordPress の管理画面から DB 設定。
– 前項の留意事項の確認(wp-admin に Basic 認証をかける)等。
### DNS レコード情報を切り替え公開
新しいサーバで公開するため DNS を切り替え。
– TTL の値を短いものに変更。今回は失念していた。。。
– www. の A レコードを移行先サーバの IP で設定。
– 前項で /etc/hosts に追記した情報を削除。
適当なタイミングで新サーバでの動作を確認。
– nslookup で IP 変更を確認。
– 念のためページ表示を確認。
– エラーログを監視し、異常がないかチェック。
– TTL の値を元に戻す。
[/markdown]