All-in-One WP Migrationが動かない! ~WordPressでサーバー引越に潜む罠と対処法【2017/3/18 大幅追補】

この記事は約6分で読めます。

2017-03-22WordPressプラグイン

質問者の写真

サイト引っ越したら500エラー出て、画面映らなくなっちゃった…… 

 

解答者の写真

あらあら。
でもConoHaならサーバーもう1個作って移せばいいじゃない。
15分もあれば作れるし、時間課金だから余分なお金はほとんど掛からないし。

 

質問者の写真

うん、そうする──げっ!

引越プラグインの「All-in-One WP Migration」が動かない! 

サーバー移転してトラブル発生!

なってはいけないときにサーバーダウン(500エラー)

この度ロリポップからConoHaにサーバーを変えたのですが、500エラーを吐き出しました。
500エラーの説明は略しますが、要はサーバーがダウンして訪問者がサイトを見られない状態です。

よりによって、以下の記事がはてなの新着エントリに載った直後。


私にとってWordPress関連ではてなブックマーク3つ付いた初めての記事。
アクセスがどんどん流れ込んでくる状況。

早く修復しないとっ!

エラーを直せないならサーバーを作り直してしまえ、これもConoHaならでは

しかし500エラーについて検索するも、理由は一つじゃないっぽい。

サーバー再起動 → ダメ。
プランをメモリ4Gに変更 → ダメ。

ConoHaはクリックするだけでVPSのスケールアップができ、すぐ戻せます(メモリ512MBプラン除く)。
※VPSという言葉がわからない場合はサーバーと読み替えて下さい。

ここでふと思いつく。
新しくサーバーを作って立ち上げればいいのではないかと。

ConoHaは時間制課金でサーバー作るのも一瞬。
新サーバーを立ち上げてそちらに移しても、すぐに元サーバーを削除すれば作業時間分しか費用が掛からない。
1時間1.3円だから作業に2時間掛かったとしても2.6円。
すぐにできるし無料同然だし、そうしよう。

楽ちんWordPress引越プラグインAll-in-One WP Migration

All-in-One WP Migrationが動かない!

というわけで、移転の時お世話になったプラグイン「All-in-One WP Migration 」を立ち上げます。

「All-in-One WP Migration」はクリック一発で設定丸ごとバックアップが取れる超優れものプラグイン。

数クリックで移転が完了します。

All-in-One WP Migrationに興味ある方はNETAONE様の記事 に詳しいです。
実際に使ってみて困ったから本記事に行き着いたのだとは思いますが……一応、お約束ということで。
同じようなプラグインとしてduplicatorがありますが、使い勝手はAll-in-One WP Migrationの方が圧倒的に優ります。

これさえあれば……あれ? なんか、フリーズしてない?
画面には、次のメッセージが映ったまま。

Done resolving URL address

どうすれば!

WordPressサイトの質問スレ

「Done resolving URL address」で検索すると、英語の結果しか出てこない。
仕方ないのでWordPress公式のスレを見る。

ざっと流し読んで一番下まで行く……も、解決してないじゃないか!

しかしじっくりスレを読み直す、すると答えがちゃんと書いてました。

All-in-One WP Migrationが動かなかった原因

スレから引用します。

{“Number”:2,”Message”:”fopen(\/home\/******\/public_html\/wp-content\/plugins\/all-in-one-wp-migration\/storage\/ocgy690ese8g\/export.log): failed to open stream: Permission denied”,”File”:”\/home\/*******\/public_html\/wp-content\/plugins\/all-in-one-wp-migration\/lib\/model\/class-ai1wm-log.php”,”Line”:42}

この中の、

Permission denied

が答え、つまり……

解答者の写真

フォルダやファイルのパーミッションが厳しすぎるのが原因なのね。
所有者やグループが問題かもだけど、とにかくそっち系。

「All-in-One WP Migration」のフォルダを見ると、パーミッションは755。
一時的に、全て777にしました。すると……

質問者の写真

動いた!

本件のプラグイントラブルはAll-in-One WP Migrationに限りません

他のプラグインにも当てはまります。

サーバー移転すると、プラグインが動かなくなる現象が発生することもあります。
実は「All-in-One WP Migration」だけじゃなく、他にも色々ありました(例えばBackWPUpなど)。

これはパーミッション所有者&グループが変わってしまうためです。

もしプラグインが動かなかったら、真っ先にこれを疑ってください。
私の場合は、変更することでほぼ全てのトラブルが解決しました。

具体的な対処法

パーミッション・所有者・グループを変更する

ここではSFTPクライアントWinSCPを用いた方法を紹介します。

WinSCPを起動して、プラグインフォルダへ移動。
all-in-one-wp-migrationフォルダを右クリック、プロパティを選びます。

こんな画面が出てきます。

 

恐らくパーミッションは755になってるはず。
枠囲みの部分にチェックを入れパーミッションを770か707に変更します。
パーミッションが原因の場合、どちらかが正解です。
777にはできればしたくないところですので。

「同じパーミッション/グループ/所有者を再帰的に決定」にチェックします。
これでall-in-one-wp-migrationフォルダにあるファイルとフォルダを一括で権限を書き換えることができます。

グループと所有者がわかっている場合は変更します(よくわからなければドロップダウンしてみてください)。

エクスポートの場合は、wp-contentフォルダに「ai1wm-backups」フォルダを作成します。
既に存在している場合は同じようにグループ・所有者・パーミッションを変更します。

もう一つ考えられる理由 ~KUSANAGI使用の場合

KUSANAGIを使っている場合は、上記の対策をとっても正常に動かないかもしれません。

All-in-One WP MigrationはHHVMだと動きません。

EXPORTとIMPORTの両方とも処理が終わりませんでした。
私の環境ではですが、他にも報告があるようです。

KUSANAGIの設定をPHP7に変えてみて下さい。

むしろ先にこちらを試した方がいいです。

おまけ そもそもの500エラーの原因

判明しました。
こちらの記事に書いてます。

まとめ

解答者の写真

今回はたまたまトラブったけど……「All-in-One WP Migration」は使い方簡単で便利なプラグイン。
サーバー移転だけじゃなく、手軽なバックアップソフト代わりにも使えるわよ。
もしサーバー移転してプラグインが動かなかったときは、真っ先にパーミッションを疑ってね。