WordPress サーバー移行(エックスサーバー編)

photo credit: IvanWalsh.com via photopin cc

WordPress 環境を別サーバー、あるいは別ドメインなどに移す方法です。
半分は、エックスサーバーの自動インストール機能にたよった移行ですが、備忘録まで。

想定シーン例

  • WordPress 環境を別サーバーに移行する
  • 開発環境やステージングで構築した環境をそのまま本番環境へ移行する
  • 本番環境をステージング環境に差し戻す
などなど。

実施した環境

  • サーバー:レンタルサーバー エックスサーバー(XSERVER)
  • WordPress 3.9.1日本語版
  • DBの操作は、phpMyAdmin 使用
  • WordPress のインストールは、エックスサーバーの自動インストール機能を使用
  • (タイトルは分かりやすくサーバー移行としましたが)実際は、同サーバー内でのサブドメイン移行

手順

1:ファイルのバックアップ

  1. 移行元サーバーにあるWordPressのインストールされたフォルダのデータをすべてFTPでダウンロードします。

2:ダウンロードしたファイルから、ファイル設定ファイルを上書きされないように消す

  1. ダウンロードしたファイルの中で、wp-config.php を削除します。
    このファイルには、DBへの接続設定が入っていますので、移行先サーバーに上書きすると旧サーバーのDBを見にいってしまいます。

3:データベースのバックアップ

  1. phpMyAdminにアクセスします。
  2. 対象のDBを選択し、上部タブから「エクスポート」を選択します。
  3. 上部画像のように設定します。(クリックすると拡大します。赤枠がデフォルトから変わる部分。)
  4. 右下の「実行する」ボタンをクリックして、DBのバックアップファイル(sqlファイル)を保存します。

4:sqlファイルの書き換え

  1. phpMyAdminからダウンロードした sql ファイルを、秀丸などのテキストエディタで開きます。
    ※ Windows標準の「メモ帳」は非推奨。
  2. 移行元のURLを移行先のURLに一括置換します。
    例:「dev.hoge.hoge.jp」を「www.hogehoge.jp」に一括置換
  3. sql ファイルを保存します。

5:移行元にWordPressを新規インストール

  1. XSERVER の自動インストール機能を使って、移行先に WordPress をインストールします。
    インストール手順はこちら

6:ファイルのアップロード

  1. FTPを使って、手順2で「wp-config.php を削除したファイル一式」をアップロードします。
  2. 自動インストールしているので、ほとんどのファイルが上書きになりますが、気にせず全上書きします。

7:データベースの復元

  1. phpMyAdmin にアクセスします。
  2. 対象のDBを選択し、上部タブから「インポート」を選択します。
  3. 「ファイルを選択」をクリックし、手順4で「移行元URLに置換済」の sql ファイルを選択します。
  4. 右下の「実行する」ボタンをクリックすると、データが復元されます。

8:確認

  1. 移行先サイトにアクセスし、動作を確認します。確認項目は以下のとおり。
    • 記事が表示できることを確認
    • Homeボタンなどを押して移行元サイトにジャンプしてしまわないことを確認
    • 管理画面にログインできることを確認
    • 記事の予約投稿ができることを確認
    • 記事の削除ができることを確認
    • twitterなどに連携する設定をしている場合は、それが動くことを確認
  2. 上記の移行先の変更が移行元に影響していないことを確認する。

以上で、基本的にうまくいきました。

けれど、一部プラグインの設定がデフォルトに戻っていました。
ブラグインによっては、設定が別サーバー(プラグインを提供している会社)にあるものもあるので細かい設定も、チェックしておきましょう。