ブログ移行でやったことまとめ

一筋縄ではいかないようなので、備忘録としてまとめておきます。移行先(新鯖)は「VALUE SERVER」です。
PHP等は全く分からないので、苦労しました。

  1. 旧鯖上のブログのプラグイン「BackWPup」でデータベースのみバックアップし、パソコンにダウンロード
  2. VALUE SERVERの「サーバー間コピー機能」を使って旧鯖からFTPでデータをコピー
  3. 新鯖に空のデータベースを作成
  4. phpMyAdminを新鯖にインストールしログイン。先ほどバックアップした「.sql」ファイルを空のデータベースにインポート
  5. データのコピーが完了したのを確認後、「wp-config.php」を編集して、データベースのユーザー名等を修正
  6. DNSを新鯖に向ける
    (VALUE SERVERの場合、VALUE DOMAINが提供する無料のDNSサーバーを使わなくても、AとMXレコードには自分の利用するサーバーのホスト名、TXTレコードに「v=spf1 ip4:自分の利用するサーバーのIPアドレス ~all」を既存のDNSサーバーに設定すれば良いよう)
  7. 浸透を確認後、アクセス。画面が真っ白なのでググると、デバッグモードにすると原因がわかるらしい。「wp-config.php」内の「false」を「true」に変更
  8. デバッグモードに変更後、再度アクセス。特定のプラグインに問題があるらしい
    debugmodepluginerror
  9. データベースを編集してプラグインを手動で停止させる。phpMyAdminにログイン→左のデータベース名→左の「wp_options」→「active_plugins」を「編集」し「実行」
    (具体的には先頭の「a:14:」を「a:13:」に書き換え、該当プラグインの部分(「i:」で始まり「“;」で終わる文字列)を消去)
  10. デバッグモードを解除し、再度アクセス。ブログが正常に表示される
  11. 先ほど無効にしたプラグインは、再有効化/再インストール後の再有効化でも利用不可なよう。ここで再びデバッグモードにする
  12. 先ほどのデバッグモードでは「Fatal error: Cannot redeclare 関数名 in 該当ファイルのパス…」と書かれていた。「同じ名前のユーザー定義関数を何度も定義した場合などに表示」されるエラーらしく(参考:http://php1st.com/561/)、該当部分を以下のコードでくくるといいらしい(参考:http://www.nishi2002.com/3695.html
    if (!function_exists('関数名')) {
    (問題の関数名が含まれる部分)
    }
  13. 再度アクセスすると、今度は別の部分に問題があるらしい。「12.」と同様に修正し、再度アクセス
  14. 問題なさそうなので、デバッグモードを解除。正常にアクセスでき、該当プラグインの動作も問題ないことを確認
  15. 各プラグインが動作するか確認。すると、「BackWPup」を実行しようとするも、「run」をクリック後にページが遷移しない
  16. ログの出力先に旧鯖上の場所を絶対パスで指定していたことが原因。パスを新しい場所に修正
  17. 再度「run」。今度はDropBoxとの接続で問題で、「Dropbox API: (59)…」エラーが表示される。OpenSSLの問題らしい。http://fnya.cocolog-nifty.com/blog/2014/03/wordpress-backw.htmlを参考にして「SSL 接続の整合性チェックを無効」にする
  18. 再度オーソリ申請。問題なく通ったので、そのままバックアップを実行
  19. これら以外のプラグインは問題ないよう
  20. 最後に、ページが問題なく閲覧できるかやテスト投稿を行う

「画面が真っ白」などは割とあるのかもしれないので、ご参考になれば幸いです。

ですが、プラグインはアップデートのたびに修正しないといけないので面倒ですね…

Post navigation


コメントを残す