プラグインを使わずに、WordPressサイトをサーバー移行する手順についてご紹介いたします。
比較的記事数の少ないWordPressサイトのサーバー移行でしたら、プラグイン「All-in-One WP Migration」を活用すると素早く簡単にできます。
ドメイン変更となる場合のサーバー移行も概ね自動で簡単に完了できる、ありがたいプラグインです。
しかし、日本語で名付けられた画像ファイルが含まれていたり、データ容量や記事数が多いサイトの場合は、上記のプラグインでは正常にサーバー移行が完了できないことがあります。
プラグインを使わずにWordPressサイトをサーバー移行する原則的な方法を理解していると、いざという時も焦らず安心です。
サーバー移行を請け負うのは様々な面でリスクが高く工数も掛かりがちなので、私はなるべくサーバー移行作業は請け負わないようにしていますが、それでもこれまでおそらく20件以上は対応してきました。
記事数やサイトデータの多いサイトも多いため、経験上、All-in-One WP Migrationで無事問題なく移行完了する事例はほとんどありません。
なので、サーバー移行をお見積もりさせていただく場合には、基本的にプラグインを使わずにサーバー移行することを想定しています。
小規模なサイトの場合は間違いなくAll-in-One WP Migrationを使った方が楽だと思いますが、実際にはAll-in-One WP Migrationでうまくサーバー移行できない場合が多いため、プラグインを使わないWordPressサーバー移行手順をご紹介いたします。
新しいサーバーを契約する
移行先のサーバーを契約します。
基本的には、エックスサーバーがおすすめです。
旧サーバーのWordPressサイトデータ一式をバックアップ・ダウンロード
ファイル一式をサーバーからダウンロード
「ファイル一式」とは、
- WordPress本体のシステムファイル群一式(wp-admin、wp-content、wp-includesディレクトリやその他ファイル)
- WordPressテーマファイル一式(/wp-content/themes内)
- プラグインファイル一式(/wp-content/plugins内)
- 画像ファイル一式(/wp-content/uploads内)
などです。
FTPソフトを利用してサーバーに接続し、サーバーからファイル一式をダウンロードします。
データベースをエクスポート
一般的なホームページと違い、WordPressの場合は、サーバー内のファイル一式をダウンロードし、新サーバーへアップロードするだけでは不十分です。
WordPressサイトは、ファイル一式とデータベースで構成されています。
そのため、データベースの移行も必須となります。
旧サーバーからデータベースをエクスポートします。
サーバーパネルから、phpMyAdmin(データベースの管理画面)にログインし、データベースの「エクスポート」を行うことができます。
バックアッププラグイン「BackWPup」を設定すると、サーバー内の「ファイル一式」と「データベース」をサーバー内やDropboxの中にzip形式で保存できるため便利です。
BackWPupを設定済みで、zip形式のバックアップデータが保存されている方は、そのzipフォルダをパソコンにダウンロードして、解凍しておきましょう。
新サーバーにWordPressサイトデータ一式をアップロード
次に、旧サーバーのファイルやデータベースを新サーバーにアップロードします。
ドメイン設定の追加
サーバーを契約したばかりですと、初期ドメインしか登録されていないので、新しいサーバーのサーバーパネルから、利用する独自ドメインを追加設定します。
エックスサーバーの場合は、サーバーパネル右上の「ドメイン設定」→「ドメイン設定の追加」より追加できます。
データベースを作成
旧サーバーでエクスポートしたデータベースをインポートするための空のデータベースを作成します。
次の手順で、データベースに関する情報を入力する必要があるので、
- データベース名
- データベースのユーザー名
- データベースのパスワード
- MySQLのホスト名
を別途パソコンのメモ帳ソフトやテキストエディタに一時的に控えておきましょう。
データベース管理システムの名称です。
ご参考URL:【エックスサーバー】WordPressの移転について
wp-configファイルの書き換え
旧サーバーのファイル一式の中に、wp-config.phpというファイルがあります。
その中に、WordPressファイル一式とデータベースの紐付けに関する設定があるため、これを先ほど作成した新しい空のデータベースの情報に差し替えます。
wp-config.phpファイルの下の方に、以下のような記述がありますので、適宜差し替えます。
/** WordPress のためのデータベース名 */ define('DB_NAME', 'example_wp'); /** MySQL データベースのユーザー名 */ define('DB_USER', 'example_user'); /** MySQL データベースのパスワード */ define('DB_PASSWORD', '***********'); /** MySQL のホスト名 */ define('DB_HOST', 'mysql○○.xserver.jp');
ファイル一式をサーバーにアップロード
FTPソフトを利用してサーバーに接続し、パソコンにダウンロードしておいたバックアップファイル一式を新サーバーにアップロードします。
ファイル数が多いため、アップロード漏れがないようにご注意ください。
そのデータベースのファイルは、FTPソフトでサーバーにアップするのではなく別途インポートするため取り除いておきます。
データベースをインポート
サーバーパネルから、phpMyAdmin(データベースの管理画面)にログインし、データベースファイルの「インポート」を行います。
「インポート」タブをクリックして、アップロードするファイルを選択し「実行」をクリックします。
「インポートは正常に終了しました」というメッセージが出れば完了です。
新サーバーでのWordPressサイトの表示・動作を確認して、問題なければ、次の手順に進みます。
サーバー移行に伴うその他の作業
ドメイン変更を伴う場合には
同じドメインのままサーバーを変えるだけでしたら、上記の手順に加えて、メールアカウントの設定、ネームサーバーの設定変更で完了となります。
しかし、旧サーバーで利用していたドメインと新サーバーで利用するドメインが異なる場合は、ドメイン変更(URL変更)に伴う作業が必須となります。
-
Search Replace DBの使い方!データベース内のドメインを一括置換する方法
プラグインを使わずにドメイン変更を伴うサーバー移行を行う場合、Search Replace DBを使うと ...
新サーバーにてメールアカウントの作成
独自ドメインのメールアカウントをご利用なさっている場合は、サーバー移行に伴い新サーバーでのメールアカウント作成やメール送受信設定、旧サーバーのメールのバックアップなどの対応が適宜必要です。
ドメインとサーバーの紐付け設定(ネームサーバーの設定)を変更する前に、新サーバーでも同様のメールアカウントを作成しておかないと、ドメインを新サーバーに紐付けてからメールが届かず復元も不可能となります。
必ずネームサーバー切り替え前に、メールアカウントを作成しておきましょう。
メールの転送設定、Gmailの設定・メールソフトの設定などについては、ご利用のサーバーの公式サイトなどをご確認ください。
DNS(ネームサーバー)設定の変更
ドメインの管理画面に、「DNS設定」「ネームサーバー設定」などの項目があるかと思います。
そこで、旧サーバーのネームサーバーが設定されていますが、それを新サーバーのネームサーバーに設定すると、ドメインを新サーバーへ紐付けることができます。
ネームサーバーを変更してすぐには変わらず、反映までに数時間~最大72時間程度かかるとされています。
ドメインとサーバーを同じ会社で一元管理したい場合は、ネームサーバーの変更だけでなく、ドメイン移管手続きも必要となります。
サーバー移行時のチェックリスト・注意点は別の記事でまとめさせていただきます。
まとめ
サーバー移行はリスクや労力・コストを伴いますが、もし今遅いサーバーを利用しているとしたら、そのサーバーを使い続ける方が長期的に見て損失が大きいです。
記事数やデータ容量が増えてくると、サーバー移行後のチェック作業など工数が嵩むことがあるので、サーバー移行するのであれば早い方が良いと思います。
もし遅いサーバーを利用中で、サーバー移行をしたいと考えている方は、この記事や以下の記事を参考にしていただけましたら幸いです。