WordPressでブログやサイトを運営していると、思わぬタイミングで別ドメインや別サーバーへ移行したい場面があります。
僕も何度かそんな場面に遭遇したため、備忘録がてら記事にしています。
※WordPressデータの移行(引っ越し)にはいくつか方法があると思いますが、自分自身が行った流れでメモしています。あしからず。
ちなみに、今回記事で紹介している環境は以下の通りです。
- 旧ドメイン→新ドメインへ
- サーバーはそのまま(エックスサーバー)
それでは、まずWordPressのデータをダウンロードするところからスタートです。
ファイルとデータベースのバックアップを取る
移行元となるWordPressのファイルとデーターベース等のバックアップを取ります。
僕が使用したのは「BackWPUp」というプラグイン。
設定方法やバックアップの取り方については、以下のページで解説しているので参考にしてください。
データーベースを作成する
移行先用にデーターベースを手動にて作成します。
(今回の例ではエックスサーバー)
MySQL追加
Xserverのサーバーパネルに入り、データーベースの「MySQL設定」をクリック。
MySQL設定の画面に遷移すると思うので、「MySQL追加」をクリック。
任意(半角英数字)のMySQLデーターベース名を入れます。
(移行先がわかるような名前がベター)
入力したら「確認画面へ進む」をクリック。
※データーベース名は、以降の作業で使用するのでメモしておきます。
追加しますか?という確認画面が表示されるので、問題なければ「追加する」をクリックします。
追加の完了が済んだら一旦「戻る」をクリック。
MySQLユーザ追加
続いて、MySQLユーザの追加を行います。
「MySQLユーザ追加」をクリックし、ユーザIDとパスワードを任意で決めて、「確認画面へ進む」をクリックします。
(前項で作成した、MySQLデーターベースに使用するためのユーザーになります)
※ユーザID、パスワードは、以降の作業で使用するのでメモしておきます。
追加しますか?という確認画面が表示されるので、問題なければ「追加する」をクリックします。
追加の完了が済んだら「戻る」をクリックします。
MySQLデーターベースへアクセス権の追加
MySQL一覧ページを開き、作成したデーターベースのアクセス権未所有ユーザのプルダウンから、前項で作成したユーザを選択し、「追加」をクリックします。
追加が無事に完了すると、アクセス権所有ユーザに先程選択したユーザが追加されます。
MySQL設定の変更
事前にバックアップしていたファイル内から「wp-config.php」を開き、以下の情報を今回作成したデーターベース・ユーザの情報へ変更します。
※ホスト名については、MySQL設定画面のMySQL一覧ページ下部に記載あり。
- 今回作成したデーターベース名
- 今回作成したデーターベースのユーザー名
- 今回作成したデーターベースのパスワード
- MySQLのホスト名
WPファイルをサーバーにアップロード
新たなドメインにWordPressを移行する際には、事前にドメイン・ネームサーバー等の設定は済ましておき、サイトURLを閲覧した際、デフォルトページが表示される状況にしておきます。
(※ドメインはそのままで、新たなサーバーに移行する場合は、ネームサーバー変更のタイミングは適宜おこなってください/事前に動作確認等をおこないたい場合は、hostsファイルを編集して確認する方法を参考に)
以下は、エックスサーバーでのデフォルトページ。
WordPressファイルを一式サーバーにアップロードします。
(下図はFFFTPでアップロードした例)
※旧サイトと同じ階層にしてアップロードを行います。
WPデーターベースをインポート
サーバーパネル(例:エックスサーバー)のデーターベースから「phpmyadmin」をクリックします。
(MySQLのバージョンは、MySQL設定の一覧から確認できます。今回の例では5.7)
ユーザー名とパスワードを入力して、ログインをクリック。
phpmyadminの画面に遷移するので、作成したデーターベース名を選択します。
次にインポートをクリック。
アップロードファイルにチェックを入れて、今回インポートするファイル(拡張子が「.sql」)を選択します。
ファイルを選択できたら、「実行」をクリックします。
(その他の項目は基本そのまま)
以下のような形で、インポートが正常に終了すれば完了です。
ドメインが異なる場合
サーバー移転だけでなく、ドメイン自体に変更がある場合、例えば「https://example.com」から「https://example.jp」や「https://sub.example.com」などに変わる場合、データーベース内に存在しているドメインも新たなものに変更する必要があります。
その方法については以下のページで解説しているので、気になる方はご参考にしてください。
WordPress管理画面へログインしてみよう
移行完了後は、WP管理画面にもしっかりログインできるか確認します。
ログイン時は、旧ドメイン(移行元)で使用していた「ユーザー名またはメールアドレス」と「パスワード」でログインすることができます。
新たにユーザー名とパスワードを設定したい場合
新たなドメイン(移行先)なので、ユーザー名とパスワードを一新したい。
という場合は、ユーザーを新規追加して運用します。
まずは、左サイドのメニューから「ユーザー」にアクセスしてください。
ユーザー一覧画面が表示されます。
メールアドレスを変更する場合は、ユーザー名のところで「編集」をクリックし、
連絡先情報内の「メール」情報を変更しておきましょう。
次に新規ユーザーを追加画面から、ユーザーの追加をおこないます。
この時の権限グループは「管理者」にしておきましょう。
- ユーザー名を入力
- メールアドレスを入力
- パスワードを入力
- 管理者にする
基本的に上記4つで問題ありませんが、必要に応じて適宜入力します。
入力し終えたら「新規ユーザーを追加」をクリックで完了です。
不要なユーザーは削除しておこう
今回は、新たなドメインに対して、ユーザーも新規で追加しました。
そのため、以前使用していたユーザー(旧ドメイン時)は、不要なためセキュリティも考慮し、削除しておきます。
※削除する場合は、新規で追加したユーザーでログインしておく必要があります。
【忘れずに】ユーザー削除時のコンテンツ紐付け
ユーザーを削除するときに注意しなければいけないのが、コンテンツの紐付けです。
削除する予定のユーザーがこれまで作成してきたコンテンツがある場合で、今後必要な場合、別のユーザーのものにする必要があります。
この部分の選択をミスると大変なことになるので、慎重におこないましょう。
まとめ
今回は「WordPressサイト(ブログ)を別ドメイン・サーバーへ移行する方法」ということで、エックスサーバーを例にお話いたしました。
エックスサーバー以外のサーバーでも、管理画面内が若干異なるだけで、基本的な流れは同じかと思われます。
もし不明な場合は、サービスもとに確認を取りながら進めることで、比較的スムーズに移行作業が行えるかと思います。