WordPress&サーバを、ドメインを変えずに移行する方法
先日後輩がWordPressごとサーバ移行を行ってくれて(本当に良い後輩すぎて泣く)、ちょいちょいそのサポートをしてました。
その時に色々調べたり勉強になったこと、そして移行の流れを備忘録として残しておきたいと思います。
- 1.現在インストールされているWordPressの中身をバックアップ
- 2.現在アップしているサーバのphpMyAdminにアクセス
- 3.現在のWordPressの接頭辞に該当するデータたちをエクスポート
- 4.新サーバにデータベース&WordPress環境を構築
- 5.新WordPressの接頭辞は、現在のWordPressと同じものに。
- 6.新サーバのphpMyAdminにアクセスし、エクスポートしたデータをインポート。
- 7.現在使用していたサーバのドメイン紐付けを解除
- 8.新サーバにドメインを紐付ける
- ここまででうまくいかない場合は下記を参照してください!
1.現在インストールされているWordPressの中身をバックアップ
サーバ上にアップされている「wp-contents」を丸ごとDLしておきます。
時間がかかるので、wp-contentsというフォルダを作った中に、中身の各フォルダごとDLするのも良いかと思います。
wp-contentsより上のディレクトリのものたちも編集しているようでしたら、WordPress本体ごとDLしたほうが良いと思いますが、大体の方はwp-contentsだけをDLしておけば大丈夫かと思います。
2.現在アップしているサーバのphpMyAdminにアクセス
現在利用しているサーバのphpMyAdminにアクセスします。大体サーバドメイン/phpmyadminでアクセスできるはず。
で、現在のWordPressが入っているデータベースの中に入ります。左窓のメニューをクリックしていけばどこに入っているかわかると思います。
3.現在のWordPressの接頭辞に該当するデータたちをエクスポート
そこから、現在のWordPressで指定している接頭辞のものたちを選択し、それらをエクスポートしておきます。
この際に、ちょっとずつエクスポートしていくのが良さそうです。
接頭辞とは
レンタルサーバで簡単にWPをインストールするのでも、WPを直接インストールする際にも、「テーブル接頭辞」という部分に入力する項目があるかと思います。
デフォルトは「wp_」となっており、そこを書き換えていなければwp_のものを、いくつかWPを同じデータベースで管理している場合は該当する接頭辞を選択してください。
現在のWPで何を使っているか忘れてしまった場合はwp-config.phpで確認できます。
4.新サーバにデータベース&WordPress環境を構築
新サーバに新しいデータベースを構築します。レンタルサーバだと簡単にできるはず。DB名も現在のDB名と同じ方がわかりやすいかも。
WordPress本体を落とし、FTPで新しいWordPressをアップします。レンタルサーバの場合はWordPressの簡単インストールでも大丈夫です。
が、WPインストール先のディレクトリ名も現在のサーバと同じ名前にしてあげましょう。
そうすれば、後々URLの書き換えなどもしなくて済むので、ここもなんだかんだ重要です!
FTP上で、1でバックアップとしてダウンロードしておいた「wp-contents」もしくは本体を上書きでアップしてあげます。
この辺は上書きじゃなくてwp-contents以外をあげておいても大丈夫ですし、適宜対応させてください。
正直この辺の流れはちょっと覚えてませんが、たぶんあってるはず…。(笑)
5.新WordPressの接頭辞は、現在のWordPressと同じものに。
先ほどもお伝えしましたが、「テーブル接頭辞」(デフォルトは「wp_」)の部分を、以降予定の現在のWordPressの接頭辞と同じものにしてください。
現在のデータと新しいデータが紐付けされるための大事なところです!!
意外にも接頭辞で紐付けがされずインポートしてもうまく反映されないというところでつまずいてしまいましたので、ぜひここは確実にしておいてください!
6.新サーバのphpMyAdminにアクセスし、エクスポートしたデータをインポート。
3でエクスポートした現在のWordPressのデータを、4で作成した新サーバのデータベースにインポートします。
インポートもエクスポート同様に、個別で少しずつ行うのが良いかと思います。
これで、WordPressや記事などの以降が完了しました!!おめでとうございます!!
新WordPressにログインし、過去の投稿データなどがきちんと表示されているか確認してみてくださいね。
もし、プラグインなどが動いていなければ、ダッシュボード>プラグインから、使っていたプラグインたちを起動させてあげてください!!使用するボタンを押せばOK。
画像などが表示されていない場合はご安心ください。まだドメインの紐付けを行っていないので、ドメインが書き換えられたら元に戻るはず!
7.現在使用していたサーバのドメイン紐付けを解除
現在のサーバとはいよいよおさらば。ただし、ドメインはそのまま使いたいので、ドメインの紐付けを一度解除します。
ゾーン設定を削除してあげればOK。
8.新サーバにドメインを紐付ける
レンタルサーバなどなら簡単。新サーバのコントロールパネルなどから、新しいドメインを追加します。そこで、先ほど紐付けを解除したドメインを指定してあげましょう。
ここまででうまくいかない場合は下記を参照してください!
ログイン画面のCSSが変でログインできない場合
新サーバデータベース内「wp_options」のsiteurlを新しいドメインに書き換えてみましょう
これ、きちんと順序立てて以前と同じ設定にしていれば、変更しなくて良い場合もあるのですが・・・、もし、ディレクトリ名を変えていたり、URLを以前と違うものにしていれば、この設定が肝になるかも!!
フォルダまでのディレクトリ指定が必要な場合とそうじゃない場合があるので見極めが必要になってきます。
ログイン画面自体にたどり着けない場合
サーバ自体に割り当てられたURLで、WPにログインし、ダッシュボード>一般設定からURLのドメインを書き換えましょう。
「http://(サーバ自体のドメインURL)/(WPのフォルダ名)/wp-login.php」にアクセスしたら、ログインできると思います。
レンタルサーバだと特にサーバ本体にURLが設定されているかと思うので…。
で、ログインできたらURLを指定したいものに書き換えてみましょう!
うまくいかない場合や、一括で投稿記事のURL書き換えがしたい場合
新サーバphpMyAdminにアクセスし、該当する新DBの「SQL」内に以下を入力してください。
UPDATE
wp_options
SET
option_value =
replace
(option_value,
'http://example.old/'
,
'http://example.new/'
)
WHERE
option_name =
'home'
OR
option_name =
'siteurl'
;
UPDATE
wp_posts
SET
guid =
replace
(guid,
'http://example.old/'
,
'http://example.new/'
);
UPDATE
wp_posts
SET
post_content =
replace
(post_content,
'http://example.old/'
,
'http://example.new/'
);
UPDATE
wp_postmeta
SET
meta_value =
replace
(meta_value,
'http://example.old/'
,
'http://example.new/'
);
左側のURLは、書き換え前のURLを指定。右側のURLには、書き換え後のURLを指定してください。
ドメインやディレクトリ名が変わらない場合や、URLが合っている場合は必要ありませんが、特に絶対パスで指定している時には役立つかと思います。
DB内のURLが完全に置換されます!DreamWeaverでいう置換の役割まんまです。これ、文字とかも書き換えられそうだなー。
全くドメインを変える場合にも使えると思います。
以上になります。
よければランキングクリックお願いします★
こちらの記事もよろしければどうぞ。