duplicatorを使って独自ドメインWordPressのサーバー引越しをしてみた

今回レンタルサーバー間で、同じ独自ドメインで、WordPressを引越すことになったので色々調べてみたら「Duplicator」というプラグインで引越すのが賢い人のやり方みたいな感じでした。しかも、すごく簡単と書いてあるw。

結果としては、「Duplicator」というプラグインで引越すのが賢いです。おススメです。エラー出ても修正簡単です(結果論)

と言う訳で「Duplicator」というプラグインで楽して引越す予定だったのですが、日本語画像ファイルが原因でエラーが出て、レンタルサーバーのドメイン設定、サイト設定、データベース設定を削除したり新規追加したり、ドメインのAレコードをあっちに差したりこっちに差したり。なんか無駄な事を繰り返し、偶然エラーの修正のやり方を見い出して、なんとか収まった。物凄く悪戦苦闘したんです。というわけで、今回は「Duplicator」で引越し時のエラー回避の仕方をレポートします。

「Duplicator」というプラグインをインストール。有効化して「Duplicator」をクリックした後、右上の「Crate New」をクリック

任意の名前に変えても良し、そのままでも良し。「Next]クリック

「Notice」と書いてある所がエラーになるかもよ?ならんかもよ?って感じ。

開けて調べて見たら、データが大きいからエラーになる可能性があるのと、画像ファイル名が日本語のがエラーになりそうな感じ?

運がイイから大丈夫!のノリで、あまり気にせず「YES」にチェックを入れて「BUILD」をクリック

うぃんうぃんと引越し用のデータを作っております。しばし待たれよ。

できました。「Installer」と「Archive(329.28MB)」この2つをダウンロードします。これで旧サーバーでの移行事前準備は完了です。

新サーバー側の前準備として、あらかじめレンタルサーバーでドメインを登録し、サイトを登録し、サーバーに「WordPress」をインストール。MySQL(データーベース)を作り、データベース名やパスワードをコピーして準備万端です。

ダウンロードした「Installer」「Archive」を引越し先サーバーの「WordPress」がインストールされているフォルダにFTPでアップロードします。

ファイルをアップロード後にブラウザから「http://ドメイン/installer.php」を開ます。

管理画面が出ると思いきや???デーモンさんは「http://ドメイン/installer.php」ココにはファイルが無いと言っています。そらそうでしょうドメインが指してるのは旧サーバー(引越し元)ですので「http://ドメイン/installer.php」は存在しません。存在するのは新サーバー(引越し先)です。なのでドメインのAレコードを新サーバー(引越し先)に向けないといけません。

ドメインのAレコードを変更します。お名前コムさんの設定画面

●DNSレコード設定を利用する「設定する」をクリック

Aレコードを追加して古い方を「無効」に新しい方を「有効」にする。あとはチョット1時間ほど放置する。

バリュードメインの場合の設定画面。AレコードのIPを新しいサーバーのIPアドレスに変更します。(関係ないサイトですが参考までに)

「http://ドメイン/installer.php」ここにアクセスしてみる。上手くいった。「I have read and accept all terms & notices (required to continue)」にチェックを入れて「NEXT」をクリック

管理画面が開いたら「Connect and Remove All Data」を選択し、新サーバーの「データベース情報」の「Host」は「localhost」でOK「Name」「User」「Password」を入力して「NEXT」をクリック。あとはまた「NEXT」をクリックしたり、ログインしたりで終了です。

で、サイトを色々とチェックしてみると、画像が出てない所がある。チキショーやっぱりこうなったか!予想してたけど残念である。「たいへん良く出来ました」画像が無いみたいで表示していない。

ここから、レンタルサーバーのドメイン設定、サイト設定、データベース設定を、また削除したり新規追加したり、ドメインのAレコードをあっちに差したりこっちに差したり。(全部消して最初からやり直した)なんか無駄な事を散々繰り返したよ。最初は画像が消えて無くなったと思っていたのでね。まさか画像の名前が変わっていたなんて思いもしないです。悪戦苦闘の末、画像ファイル名が日本語名の場合エラーになるという事に気付き、修正。道のりは長かったです。

道のりは長かった割に修正のやり方は簡単。ワードプレスの場合、ブログに掲載した画像は「Wp-content」のフォルダの「uploads」に入っているので、旧サーバーの「Wp-content」のフォルダの「uploads」内の画像ファイルを全てダウンロードしておきます。

日本語で始まる画像ファイル名が、どこぞで名前が変わってしまって(画面右上)画像ファイルが無い状態になっているので、ダウンロードしておいた旧サーバーの「Wp-content」のフォルダの「uploads」内の画像ファイルを、壊れている分だけUPします。

日本語で始まる画像の表示に成功しました。結果としては、「Duplicator」というプラグインで引越すのが賢いです。楽ちんでおススメです。エラー出ても修正簡単です(結果論)w

結論として、WordPressのサーバー引越しはduplicator以外考えられません。同じ独自ドメインからのサーバー引越しも意外と簡単でした。やってみるとやれるもんです。

あーあとね、ログイン時に403エラー(Forbidden)が出る場合があるんです。バリュードメインのコアサーバーの場合がそうでした。まぁ原因と対処方法なんですが、海外勢のいたずら?悪質な乗っ取りなど防止の為かな?「WordPressのログイン制限」と言うのがあって、バリュードメインのコアサーバーは、デフォルトで「海外からのログインを制限する」になっていました。なので「海外在住者」は「海外からのログインを制限しない」に変更しないとログインできなかったのです。これも気付くのに時間がかかりましたよ。トホホですよ。

これで終わりかと思ったらまだあった。WPの管理画面に入ると上の方になんかいつも出てるんです何かな~と思って翻訳してみたら、FTPでアップしたインストールファイルを削除しないといけないみたいで、削除の方法は簡単!②をクリックするだけです。と書いてあるみたいです。

②をクリックしたらこの画面になり「実行したよ」「削除したのはコレよ」と表示、念のためFTPで確認してね~と言っております。FTPで確認したら消えていました。アーカイブファイル?たぶんデータの塊のzipファイルの事かな?コレはあったので手動で削除しろって事かな?という訳でこれは手動で削除しました。これでお終いです。

参考までに、引っ越し先のサーバー(このサーバー)は、バリュードメインのコアサーバーです。


ドメインは、お名前コムとバリュードメインを使っています。





プラグインを使わない引越しもコレはコレでアリです。ファイルが巨大な場合、プラグイン使えなかったり、サーバーでssh使えるならプラグインを使わない選択肢の方が手っ取り早いです。

旧サーバーのWordPressのファイルを全てコピーして、データベースをダンプ(エクスポート)しておく。画像の文字化けには注意する。

新サーバーへファイルをアップロードしてデータベースもインポートしておく。画像の文字化け注意する。

「wp-config.php」というファイルの「データベース名」「ユーザー名」「パスワード」「ホスト名」の記述を新サーバーの情報に書き換えます。

WordPress管理画面にログインして、管理画面メニューの「設定」 「パーマリンク設定」を開いて、何も入力をしないまま、パーマリンクを更新ボタンを押します。この作業で.htaccessファイルが更新されてWordPressのデータの移行作業は完了です。

ドメインのAレコードを新サーバーのIPアドレスに変更します。これでサイトの移行作業は完了です。

WordPressのメディアライブラリに画像が表示されない

という状況にもなりましたが、Apache2やphp5のアップデートなどによって挙動が変わってしまった時に起こりやすいらしい。

wp-admin/admin-ajax.php このファイルを書き換えたら表示しました。ラッキー

修正前

@header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) );

修正後

if(in_array($_POST['action'], array('query-attachments', 'send-attachment-to-editor'))){
@header('Content-Type: application/json; charset=' . get_option('blog_charset'));
}else{
@header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) );
}
詳しくはコチラ
解決かと思いきや、wp-admin/admin-ajax.php を書き換えるとバージョンアップのたびに変更しないといけないので、サーバー側の設定を変えたほうがいい!という事なので、
htacessに、
php_value output_handler none
を追加して、問題解決♪
詳しくはコチラのコメ欄参考
http://karinto.in/2014/05/19/wordpress/
http://blog.web-alpha.info/kagoya-media/

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク