WordPress

エックスサーバーで異なるサーバーIDへドメイン運用サーバーを変更する方法

エックスサーバー(Xserver)で運用中のWordPressサイトを、別のサーバーアカウントへ移転する方法をまとめました。

はじめに

エックスサーバーで複数のサーバーIDを契約している場合、「A」のサーバーIDで運用しているドメインを、「B」のサーバーIDに変更して運用したい場合が出てきます。

エックスサーバーでは仕様上、すでにいずれかのサーバーIDで運用中のドメイン名を他のサーバーIDに重複して設定することができません。

そのため、エックスサーバー間でドメイン運用サーバーを変更する場合、現在該当ドメイン名を運用中のサーバーID(以下「移行元サーバー」という)からドメイン設定をいったん削除し、改めて移動先のサーバーID(以下「移行先サーバー」という)でドメイン設定を追加する必要があります。

大まかな流れは以下の通りです。

  1. 移行元サーバーでホームページデータをバックアップ
  2. 移行元サーバーから対象ドメインを削除
  3. 移行先サーバーに対象ドメインを追加
  4. 移行先サーバーにHPデータをアップロードする
管理人
管理人
上記の作業中は一時的にWebサイトやメールを利用できない時間が発生するので注意が必要です。

移行元サーバーでHPデータをバックアップする

まずは、移行元サーバーでホームページデータをバックアップしましょう。

ホームページデータは、「FileZilla」などのFTPソフトを使用してバックアップすることもできますが、Xserverユーザーなら「サーバーパネル」から簡単にバックアップできます。

ホームページデータのバックアップ

移行元サーバーのサーバーパネルにログイン後、「アカウント」→「バックアップ」と進みます。

 

「主導バックアップデータを作成」から、ホームディレクトリもしくは対象ドメインの「作成とダウンロード」をクリックしてバックアップデータを取得します。

データベースのバックアップ

続いて、「データベース」→「MySQLバックアップ」と進みます。

 

「①現在のMySQLをダウンロード」から、対象ドメインのデータベースを「②ダウンロード実行」します。

管理人
管理人
圧縮形式は、「圧縮しない」「gz形式」のどちらでもかまいません。

 

なお、対象ドメインのデータベースは、前項でダウンロードしたホームページデータの『public_html』フォルダ内にある、『wp-config.php』という設定ファイルから特定することができます。

▼wp-config.php の内容(抜粋)
—————————————-
/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘************’); ←MySQLデータベース名

/** MySQL データベースのユーザー名 */
define(‘DB_USER’, ‘************’);

/** MySQL データベースのパスワード */
define(‘DB_PASSWORD’, ‘************’);

/** MySQL のホスト名 */
define(‘DB_HOST’, ‘************’);
—————————————-

PHPの設定確認

PHPプログラムを利用している場合、「PHPバージョン」と「php.iniの設定内容」の詳細を控えます。

「PHP」→「PHP Ver.切替」「php.ini設定」で確認できます。

メールアカウント設定確認

利用しているメールアカウントを確認、控えます。メールの転送先を設定している場合はその情報も控えます。

移行元サーバーから対象ドメインを削除する

ホームページデータのバックアップができたら、移行元サーバーから対象ドメインを削除します。

移行元のサーバーパネルにログイン後、「ドメイン設定」へと進み、対象ドメインを削除しましょう。

移行先サーバーに対象ドメインを追加する

移行先のサーバーパネルにログイン後、「ドメイン設定」へと進み、対象ドメインを追加しましょう。

移行先サーバーにHPデータをアップロードする

移行先サーバーに対象ドメインを追加できたら、各種設定をします。

①FTPソフトで移転先サーバーにアクセス

「FileZilla」などのFTPソフトを使って、移転先サーバーにアクセスします。

FileZillaの設定

②バックアップしたホームページデータをアップロード

続いて、バックアップしたホームページデータをアップロードします。

アップロード先について

③新規データベースを追加

続いて、サーバーパネルの「MySQL設定」にて新規データベースを追加します。

MySQLの設定

④バックアップしたMySQLデータベースをインポート

続いて、「phpmyadmin」にログインして、バックアップしたMySQLデータベースをインポートします。

phpMyAdminについて

⑤「wp-config.php」ファイルの書き換え

最後に、FTPサーバー上の「wp-config.php」ファイルに記載されたデータベース接続情報を、移転先サーバーのものに書き換えます。

▼wp-config.php の内容(抜粋)
—————————————-
/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘************’);

/** MySQL データベースのユーザー名 */
define(‘DB_USER’, ‘************’);

/** MySQL データベースのパスワード */
define(‘DB_PASSWORD’, ‘************’);

/** MySQL のホスト名 */
define(‘DB_HOST’, ‘************’);
—————————————-
※上記「************」の部分を書き換えてください。

⑥メールアカウントの再作成

メールアカウントを使用していた場合は、再作成も忘れずに行いましょう。

管理人
管理人
以上で完了です。対象ドメインにアクセスしWordPressの動作確認を行ってください。

FAQ

Q. 移転は完了したのですが、トップページ以外が404エラーになってしまいます。

トップページ以外がエラーとなる状態は、パーマリンク設定によるものである可能性が高いです。

「.htaccess」にWordPressのパーマリンク設定を記載していない場合、WordPressの管理画面「http://●●●●●●/wp-admin」へログイン後、パーマリンク設定を設定し直してから保存してみてください。

「設定」→「パーマリンク設定」にて、「基本」や「日付と投稿名」など、移行元サーバーでもともと使用していたものを選択し、画面下部の「変更を保存」をクリックして動作状況に変化があるかどうかについて確認しましょう。

設定を確認するだけではなく設定を改めて行うことで、FTPサーバー上の[.htaccess]ファイルにパーマリンクの設定が書き込まれるのですが、このパーマリンクを再設定することで問題が解決すると思われます。

管理人
管理人
パーマリンクの設定を独自のものに変更されていた場合は、その設定を再度行ってください。

Q. 「このWEBスペースにはまだHPがアップロードされていません」という画面が表示されます。

public_html」フォルダ内にindexファイルが複数存在していることが考えられます。詳しくは以下のページをご確認ください。

よくあるFTPトラブル

こんな記事もおすすめ