サイト当番 ホームページ保守運用

Migration Plugin

WordPress引っ越しプラグイン|
All-in-Oneと手動の使い分け

サイト一式を書き出している作業

小さなサイトなら、All-in-One WP Migrationで足りることが多いです。容量制限やタイムアウトで止まった場合は、DuplicatorやMigrate Guru、あるいは手動の手順へ切り替えます。ドメインを変えずにサーバーだけ移す全体の流れは、WordPress引っ越しにあります。

WordPress引っ越しプラグインの選び方

引っ越しプラグインは、ファイルとデータベースをまとめて運び、公開URLの書き換えまで一括で進める道具です。向くのは、投稿と固定ページが中心で、アップロード容量がプラグインの上限に収まるサイトです。メディアが多く、会員機能や予約、独自の投稿タイプが重いサイトは、同じ画面操作でも途中で止まりやすくなります。

All-in-One WP Migrationは、管理画面から書き出して読み込む流れが短いです。無料版はインポート側に容量上限があり、画面に表示される数値がその場の上限です。多くの環境では512MB前後で止まります。サーバー側の upload_max_filesize と post_max_size がそれより小さければ、プラグインより先にサーバーが拒否します。エクスポートは形式の都合で上限が見えにくい一方、memory_limit と max_execution_time で落ちます。

Duplicatorは、インストーラとアーカイブの組を作って先方サーバーへ置く方式です。無料版でも中規模まで運べることがありますが、パッケージ作成中のタイムアウトと、展開時のメモリ不足が起きやすいです。分割や有料版が必要になる境界は、画像ライブラリの大きさと、データベースの行数で決まります。

Migrate Guruは、手元のアップロード上限を避けて、提供元の中継サーバー経由で送ります。レンタルサーバーのアップロード制限でAll-in-Oneが使えないときに候補になります。中継側の所要時間と、宛先サーバーへの到達制限は残ります。移行作業を外部へ預ける判断になるので、管理画面の権限と、移行中に誰が投稿するかを先に決めてください。

選ぶときの軸は四つです。ひとつ目は、書き出したファイルが無料版の上限に収まるか。ふたつ目は、移行中に公開を止めてよいか。みっつ目は、ドメインをそのまま使うか、URLごと変えるか。よっつ目は、メールが同じサーバーに乗っているかです。メールが同居していると、ウェブだけ先に移してDNSを切ると受信が途切れます。メールは先に切り出すか、DNSの切り替えを分けてください。

同じドメインのままサーバーだけ変える作業は、プラグインの得意領域です。URLを変える場合は、プラグインの置換に加えて、検索コンソールと、外部からの被リンク、予約システムや決済の戻り先も確認します。プラグインは置換漏れを減らしますが、テーマやウィジェットに直書きした住所録までは拾いきれません。

プラグインを使わない方がよいときもあります。会員数が多くログイン中のセッションを切れない店、在庫が分単位で動く店舗、予約の空き枠がサーバー時刻に依存する施設です。こうしたサイトは、メンテナンス時間を先に決め、手動でファイルとデータベースを止めながらコピーします。プラグインの読み込み中は、投稿も在庫更新もパックに入らないか、途中状態が入るかのどちらになるかを説明できないことが多いです。

All-in-One WP Migrationの準備

作業の前に、プラグイン以外の手段でバックアップを取ります。ファイルは wp-content を含む一式、データベースは phpMyAdmin かサーバーのエクスポートです。引っ越しプラグインは便利ですが、読み込みに失敗したあとで戻す材料には向きません。バックアップは移行元と、可能なら移行先の両方に置きます。

移行先には、空のWordPressを先に入れておきます。バージョンは移行元に近づけます。PHPのメジャーバージョンが違うと、読み込みは終わっても管理画面やテーマで止まります。先方のデータベース名、ユーザー、パスワード、テーブル接頭辞は控えます。All-in-Oneは読み込み時に上書きするので、先方に残したい投稿があるなら別サイトとして分けてください。

キャッシュ系プラグイン、セキュリティ系のログイン制限、メンテナンス表示は、書き出す前に止めます。止めたまま書き出さないと、先方でログインできなくなることがあります。CDNやWAFを手前に置いている場合は、管理画面への接続が中継を通るかも確認します。移行作業中だけ、管理画面を直接サーバーへ向ける方が安定することがあります。

ディスク残量を両側で見ます。書き出した .wpress は、展開前の圧縮ファイルです。先方では、そのファイルを置ける容量に加えて、展開後の実容量が必要です。残量がギリギリだと、読み込みの後半で失敗します。画像を年単位で溜めているサイトは、先に使っていない年月のアップロードを整理すると、上限の内側に収まることがあります。

公開URL、管理画面URL、管理者のメール、FTPまたはファイルマネージャの場所を紙か別ファイルに残します。読み込み後は、ブックマークした古いログインURLが使えなくなることがあります。移行元のサーバー契約をすぐ解約しないでください。表示確認と、メールの切り出しが終わるまでは残します。

メンテナンスの告知を出すなら、書き出す直前です。告知を出したあとに投稿すると、その差分はパックに入りません。作業時間は、小さなサイトでも読み込みと確認で数十分、メディアが多いと数時間見てください。夜間にまとめるなら、フォームの受付停止も一緒に書きます。

All-in-One WP Migrationの手順

手順は短いです。移行元で書き出し、移行先で同じプラグインを入れて読み込みます。途中でブラウザを閉じると、大きなファイルほど壊れます。作業中は同じ画面を開いたまま、進捗が止まる時間を測ってください。

書き出しと読み込み

書き出しと読み込みは対です。片方だけ成功しても公開できません。先に書き出し側の容量と、先方のインポート上限を見比べます。先方の画面に出る上限が、手元のファイルより小さければ、この段階で手動か別プラグインへ切り替えます。

エクスポート

移行元の管理画面から All-in-One WP Migration を入れ、有効化します。エクスポートを開き、ファイルへ保存を選びます。高度なオプションで、キャッシュやリビジョン、スパムコメントを外すと、ファイルが小さくなります。メディアを外す選択は、あとから uploads を別途運ぶ前提です。初めてならメディアを含め、上限に収まるかを先に確認してください。

置換の欄は、ドメインを変えるときだけ使います。同じドメインでサーバーだけ変えるなら空のままでよいです。書き出しが終わったら、ファイルサイズと作成時刻を控えます。ダウンロードが途中で切れると、先方で読めないファイルになります。切れやすい回線なら、サーバー上に置いて SCP やファイルマネージャで拾う方が安全です。

インポート

移行先の空のWordPressに、同じプラグインを入れます。インポート画面に、その環境での上限が出ます。無料版では512MB前後が多いです。超えるファイルは、有料の無制限拡張か、サーバー設定の引き上げか、この記事の後半の切り替えへ進みます。ドラッグして読み込むと、進捗が100パーセントになっても置換確認が出ます。公開URLが違う場合は、ここで新旧を確認して実行します。

読み込み後は、ログインし直します。移行元の管理者アカウントが先方に入ります。先方に最初からあった管理者は残らないことがあります。パーマリンク設定を開いて保存し、リライトルールを書き直します。トップ、下層、画像、フォーム、管理画面の順で見ます。SSLの警告が出るなら、サイトアドレスとWordPressアドレス、そして残っている http の内部リンクを確認します。

All-in-One WP Migrationが失敗するとき

失敗の大半は容量と時間です。画面が真っ白、進捗が途中で止まる、500になる、読み込み後に管理画面へ入れない、公開面だけ古いテーマのまま、といった形で出ます。まずエラーの出た側を分けます。書き出し側なら移行元のPHP制限、読み込み側なら先方の上限とディスクです。

容量制限は二重です。プラグイン無料版のインポート上限と、サーバーのアップロード上限です。先方の php.ini や、レンタルサーバーのPHP設定で upload_max_filesize と post_max_size を上げても、プラグイン側の上限は別です。無料版の上限を超えるなら、拡張を買うか、メディアを外して書き出し、uploads をFTPで後から重ねます。メディアを外す方法は、データベースの添付ファイル情報と実ファイルのずれが残りやすいので、終わったあとでメディアライブラリを開いて欠けを見ます。

タイムアウトは、max_execution_time と、ブラウザ側の待ち、WAFのリクエスト時間で起きます。進捗バーが同じ数字で数分動いないときは、サーバーのエラーログを見ます。memory_limit が128MBのままだと、中規模のデータベースでも落ちます。256MB以上へ上げて再実行し、それでもダメならプラグインを諦めます。同じ失敗を三度繰り返すと、先方のディスクに壊れた一時ファイルが残ることがあります。一時ディレクトリを消してから次の手段へ進んでください。

読み込みは終わったのに表示が崩れる場合は、URL置換の漏れです。ウィジェット、カスタマイザー、テーマのオプション、ページビルダーのJSONに古いホスト名が残ります。プラグインの置換はシリアライズされた文字列を扱えますが、独自に圧縮したデータまでは届きません。サイト内検索で古いドメインを探し、残っていたら手で直すか、WP-CLI の search-replace を使います。

ログインできないときは、セキュリティプラグインが先方のIPや新しいホスト名を拒否していることがあります。先方のファイルマネージャから、該当プラグインのフォルダ名を一時的に変えます。それでも入れない場合は、クッキーとサイトURLの不一致です。wp-config.php に WP_HOME と WP_SITEURL を一時的に書いて、管理画面へ入る道を確保します。

マルチサイト、大規模な WooCommerce、予約カレンダーは、無料のAll-in-Oneだけでは足りないことが多いです。テーブル数と、アップロード年月のディレクトリ数を見た時点で、手動か引っ越し代行へ回した方が早いです。失敗ログを残し、どの段階で止まったかを記録すると、次の手段が決まります。

移行プラグインと手動の切り替え

切り替える判断は、ファイルサイズと、失敗の再現です。書き出した .wpress が無料版の上限を超える、読み込みが二度同じ場所で止まる、先方のPHP設定を触れない、この三つが揃ったらプラグインを続けません。拡張を買う選択もありますが、サーバーの制限が残ると同じ失敗が起きます。

次の候補はDuplicatorです。パッケージを作り、インストーラとアーカイブを先方へ置いてブラウザから展開します。無料版は、大きな uploads でパッケージ作成が終わりません。作成画面のログにタイムアウトやメモリと出たら、対象外のディレクトリを指定するか、有料版を検討します。展開時は先方のデータベース接続情報をインストーラに入れます。ここを間違えると、空のデータベースに対して失敗します。

Migrate Guruは、移行元と移行先の両方にプラグインを入れ、中継へ預ける流れです。手元のアップロード上限を回避できる反面、移行元の管理画面が攻撃対策で外部通信を止めていると始まりません。作業中は提供元の画面で進捗を見ます。途中でログインセッションが切れると、やり直しになります。管理者以外のアカウントでは権限が足りないことがあるので、最初から管理者で進めてください。

プラグイン同士を重ねないでください。All-in-Oneで失敗した残骸が残った先方へ、Duplicatorを重ねると、テーブル接頭辞とアップロードが混線します。切り替えるときは、先方を空のWordPressに戻すか、データベースと wp-content を消して入れ直します。移行元は触らず、先方だけ初期化します。

それでも止まる、またはメールとウェブが同居している、DNSの切り替えを分単位で制御したい、という場合は手動です。手動は手数が多い代わりに、どこで止まったかを自分で見られます。次の節で最短の流れを書き、ドメインはそのままサーバー移行へ詳細を渡します。

WordPress引っ越しを手動で進める

手動は、ファイルをコピーし、データベースを書き出して読み込み、設定ファイルの接続先を直し、必要ならURLを置換します。プラグインが隠していた工程が並ぶので、順番を飛ばさないでください。先に先方へ空のデータベースを作り、ユーザー権限を付けます。

ファイルは、WordPress一式を移行元から取得します。FTP、SFTP、サーバーのファイルマネージャ、またはSSHです。wp-config.php は先方用に書き換えるので、上書きしないよう別名で保管します。uploads が大きいときは、年月ディレクトリごとに送り、途中で切れても続きから再開できるようにします。権限は、ディレクトリ755、ファイル644を目安に戻します。600のまま残るとテーマが読めません。

データベースは phpMyAdmin のエクスポートでSQLを出します。サイズが大きいときは、圧縮して送り、先方でインポートします。インポートが上限で拒否されるなら、サーバーのコマンドか、分割インポートです。読み込み後、テーブル接頭辞が移行元と違う場合は、wp-config.php の接頭辞を移行元に合わせるか、テーブル名を揃えます。片方だけ変えると、ユーザーメタが参照できずログインできません。

接続情報は DB_NAME、DB_USER、DB_PASSWORD、DB_HOST です。先方が localhost 以外を指定していることがあります。ここを移行元のままにすると、このあとのデータベース接続確立エラーになります。表の接頭辞と、認証用キーは、移行元の値を残してよいです。キーを新しくすると、ログイン中のセッションが切れます。

同じドメインなら、hosts ファイルで先方IPを向けるか、一時URLで表示を確認してからDNSを切り替えます。URLを変えるなら、データベース内の置換を先に済ませます。DNSを先に切ると、確認前に閲覧者へ未完成の先方が出ます。メールが同じサーバーにある場合は、ウェブのAレコードだけ先に動かさないでください。MXを残すか、メールを先に別サービスへ出します。

確認は、管理画面ログイン、パーマリンク保存、トップと下層、画像、フォーム送信、決済や予約があるならテスト注文です。プラグインで運んだときと同じ確認を、手動でも省略しません。詳細な順序と、サーバー移行だけの注意はWordPress引っ越しにあります。

WordPress引っ越しプラグインのあと

読み込みが終わった直後は、まだ引っ越しの途中です。表示できても、投稿、画像、フォーム、検索エンジンへの自己参照が古い側を向いていることがあります。確認の順番を固定すると、見落としが減ります。

最初に管理画面へ入り、設定の一般でサイトアドレスを確認します。パーマリンクを保存し、404が出る下層がないかを見ます。メディアライブラリを数件開き、実ファイルが200で返るかを確認します。年をまたいだアップロードがあるサイトは、古い年月も一つは開いてください。

フォームは実送信します。通知先が移行元のサーバーメールのままだと、DNS切り替え後に届きません。決済や予約は、戻りURLとWebhookのホスト名を見ます。キャッシュプラグインは、確認が終わるまで止めたままが安全です。先に有効化すると、古いページが残って直したつもりになります。

引っ越し用プラグインは、確認が終わったら止め、必要なら削除します。残したままだと、管理画面の入口が増え、書き出し画面が外部から狙われる面になります。Duplicatorのインストーラとアーカイブも、先方の公開ディレクトリから消します。消し忘れは、第三者にサイト一式を渡すのと同じです。

移行元は、すぐ解約しません。最低でも、DNSの浸透と、メールの到達、検索結果の表示を見てからにします。移行元を残しているあいだに、先方で日次バックアップが回っているかを確認します。プラグイン引っ越しの成功は、公開面が同じに見えることではなく、先方だけで更新とバックアップが回ることです。

検索コンソールのサイトマップ送信、OGP画像、構造化データのURLも、ドメインを変えたときだけ見直します。同じドメインなら、DNS切り替え後にキャッシュが残ることがあります。Cloudflareなど手前のキャッシュを消す対象は、HTMLだけでなく、管理画面を通さない静的ファイルも含みます。

cronと、サーバー側の自動バックアップも先方で動いているかを見ます。移行元のパネルで組んでいた予約実行は、先方にはコピーされません。更新通知、バックアップ、在庫連携、メールのキューが止まっていると、数日後に初めて気づきます。管理画面のツールでサイトヘルスを開き、残っている致命的な項目だけ先に潰してください。警告の全部を当日中に消す必要はありません。

引っ越しプラグインが自分で難しいとき

容量制限で止まる、同じ失敗が続く、メールが同居している、公開を止められない、このどれかがあるなら、自分でプラグインを重ねるより先に範囲を分けた方が安全です。サーバー移行の手順全体はWordPress引っ越しにあります。手前にCDNとWAFを置いてから切り替える方がよい場合は、Cloudflare移管です。WordPressの手前設置は税別14,800円から、静的サイトの移管は税別24,800円からです。

ファイルと設定の移動だけ頼む場合は、既存レンタルサーバーからの引っ越しが税別19,800円からです。規模が大きい、メールとウェブが同じ、失敗した残骸が先方に残っている、という場合は開始価格のうえになります。月額の保守に乗せるなら、死活監視は全プランで24時間365日1秒単位です。マルウェアの常時監視はスタンダード月額17,800円(税別)以上です。

公開URLと、今止まっている画面の内容、書き出したファイルのサイズが分かれば、プラグインを続けるか手動か、手前にCloudflareを置くかを分けて返せます。先方を何度も上書きする前に、残っているバックアップの場所だけは残してください。

相談

引っ越しの止まり方から見ます

書き出したファイルのサイズと、失敗した画面が分かれば、プラグインを続けるか手動か、手前の移管かを切り分けます。

引っ越しと移管を相談する