「今のレンタルサーバーからXserverに移管したいけど、どこから手をつければいいかわからない…」そんな悩みをお持ちではありませんか?
本記事では、Lolipopなど、外部のレンタルサーバーからXserverへの移管手順を、ファイルの転送やデータベース移管、ネームサーバーの変更など、実際のイメージ画像を交えて具体的なステップを解説しています。
WordPressサイトの移管方法もご紹介しますので、初心者の方でも安心して移管作業を進めることができます。
- Xserverへの移管で何が必要か?
- データベースの移管方法
- ネームサーバーの変更方法
- WordPressサイトの移管方法
- 移管時の注意点
Xserverへの移管を考えている方、サーバー移管が初めての方、LolipopからXserverに移管したい方、WordPressサイトを新しいサーバーに移管したい方におすすめです。
サーバー移管の流れ
サーバー移管のおおまかな流れは以下のようになります。
- ドメインの設定(Xserver)
- ファイルの移管(旧サーバー → Xserver)
- データベースの移管(旧サーバー → Xserver)
- ネームサーバーの変更(ドメインを契約しているサイト)
- https化
なお、私は元々Lolipopで運用していたのですが、数年運用することで重大な問題が発覚したために、いろいろと調べて、Xserverに移管することにしました。
移管に至った経緯や、XserverとConoha Wingの比較などについては下記をご参考ください。Xserverの料金が1万円引きになるリンクも紹介しています(私の場合これが最終的な決め手でした)
移管前の注意点
他のレンタルサーバーで運用しているWEBサイトをXserverに移管するからといって、いきなり古いWEBサイトを削除しないてはいけません。
古いWEBサイトを削除するのは完全に移転が完了した後です。
なお、ネームサーバーを変更が完全に反映されるまでには数時間~72時間(3日間)ほどかかります。

ドメインの登録(ドメイン設定)
まずは、もともと使っていたドメインをXserverに登録します。
「ドメイン設定」でドメインを登録するだけでは、WEBサイトなどは移管されません。このため、Xserverに登録するだけなら、古いサイトのことを気にせずに作業を進めることができます。
ネームサーバーなどのDNSを切り替えて初めて、Xserverに登録したドメインが利用できるようになります。
サーバーパネルにログインして、「ドメイン > ドメイン設定」へと進みます。

「ドメイン設定追加」をタブをクリックして、追加したいドメインを入力します。
下の「無料独自SSLを利用する」と「Xアクセラレーターを有効にする」はチェックを入れておきます。(ネームサーバーを変更していないので無料独自SSLは設定できませんが、気にしなくて大丈夫です)

「確認画面へ進む」をクリックします。
ネームサーバーがエックスサーバー指定のものになっていませんと表示されますが、これは後で設定するので問題ありません。
「追加する」をクリックします。

以上でドメイン設定は完了です。とても簡単です。

無料独自SSLは、ドメインのネームサーバーを変更してから再度設定すれば簡単にSSL化できます。(後でやります)
FTPでファイルとフォルダを移動する
元のサーバーのデータをローカルにダウンロードする
続いて、FTPソフトを使ってファイルやフォルダをごっそり移管します。
ここではWinSCPという無料のFTPソフトを使用します。
WinSCPの使い方は下記をご参考ください。
まずは、元のレンタルサーバー(Lolipop)とSCP(もしくはSFTP)接続して、対象のディレクトリをローカルにコピーします。
ディレクトリサイズの計算が完了するとコピーが開始します。

サイズの多きなWEBサイトだと時間がかかるので、夜などにコピーしておくといいかと思います。
ファイル転送するときの接続方法はSCPかSFTPを使うと、高速かつセキュリティの高い転送が可能になります。
FTPSやFTPは遅いのでおすすめしません。
Xserver FTP接続用のアカウント情報の確認
Xserverにアップロードしたいフォルダやファイルをローカルに保存できたら、それらをXserverにアップロードします。
まずは、Xserverに接続するためのアカウント情報を確認します。
サーバーパネルで「FTP > サブFTPアカウント設定」へと進みます。

「FTPソフト設定」のタブをクリックし、以下の情報を確認します。
- FTPサーバー(ホスト名)
- ユーザー名(アカウント名)
- パスワード

FTP用のパスワードはサーバーパスワードと同じですが、サーバーパスワードとXserver登録時に入力したアカウントパスワードは異なります。
FTP用のパスワードは、登録後に届くメールに記載してあります。

FTP接続
必要な情報が揃ったら次のように入力します。
- 転送プロトコル: 「FTP」
- 暗号化: 「明示的なTLS/SSL暗号化」
- ホスト名: 「〇〇.xserver.jp」
- ポート番号:「21」
- ユーザー名: 「アカウント名」
- パスワード: 「FTPのパスワード(サーバーパスワード)」

通常WEBサイトなどのフォルダをアップロードしたり管理するのは「public_html」というディレクトリです。
今の設定のまま接続すると、上位のディレクトリに入ってしまいます。間違って消すと大変なのと、普段はそんなに使わないので、接続時に「public_html」のディレクトリに自動的に入るようにします。
「設定」をクリックします。

「環境 > ディレクトリ」を選択して、「リモートディレクトリ」に記載のあるドメイン名に「/public_html」を追記し「OK」をクリックします。

「保存」をクリックして、「ログイン」をクリックします。
以上で接続が完了し、指定したディレクトリに入ることができます。
デフォルトでサーバーの上位のディレクトリにアクセスしたい場合はディレクトリの設定は不要です。
登録後に後から変更することもできます。
不要なファイルを削除する(default_page.png, index.html)
Xserverでドメイン登録をすると、public_htmlフォルダの中に「default_page.png」と「index.html」「.htaccess」「.user.ini」という4つのファイルが自動的に追加されます。

この4つのファイルは不要なので削除しておきます。
.htaccessや.user.iniファイルは必要になったときに同じ名前でファイルを作成すれば問題ありません。
.user.iniファイルは、PHPの設定をディレクトリ単位でカスタマイズするためのファイルです。
従来のphp.iniファイルがサーバー全体の設定を管理するのに対し、.user.iniファイルは、各ディレクトリに配置することで、そのディレクトリ内でのみ有効なPHPの設定を細かく調整することができます。
Xserverにアップロードする
Xserverの対象のディレクトリに、ローカルのフォルダとファイルをアップロードします。
右側のサーバーの画面は対象のドメインの「public_html」ディレクトリを開きます。
左側のローカルの画面で対象のフォルダとファイルを選択し、「アップロード」をクリックします。

Lolipopからデータベースのデータをダウンロードする
次にデータベースを移管します。
移管の流れは旧サーバー(Lolipop)からデータベースをダウンロードして、Xserverに新しく作成したデータベースにアップロードします。
まずは、旧サーバー(Lolipop)からデータベースをダウンロード(エクスポート)します。
Lolipopにログインして「サーバーの管理・設定 > データベース」へと進みます。

対象のデータベースを選択して「操作する」をクリックします。

移管しているWEBサイトがどのデータベースを使っているかわからない場合は、WEBサイトのルートドメインの直下のディレクトリにある「wp-config.php」を開くと中にデータベースの情報が記載してあります。

パスワードを確認して「phpMyAdminを開く」をクリックします。
※次のログイン画面で以下の情報を使うので覚えておいてください。
- サーバー
- ユーザー名
- パスワード

ログイン画面が表示されるので、ユーザー名、パスワードを入力して、サーバーを選択します。

ログインするとテーブルの一覧が表示されます。

1つのデータベースに複数のWEBサイトをインストールしている場合があります。その場合は、wp-config.phpファイルで、対象のWEBサイトのテーブル名の接頭語を確認することができます。
例えば、$table_prefix = 'prograshi_'
の場合は、「prograshi_opotions」などのように、冒頭に指定の名前がついているものが対象のテーブルです。

なお、テーブルの数が多いとスクロールしても対象のテーブルが表示されないことがあります。そのときは2ページ目以降にあります。上部の「フィルタを入力し検索」に接頭語を入力すれば表示されます。
対象のデータベースを選択した状態で、上部メニューの「エクスポート」をクリックします。

エクスポート方法は「詳細 – 可能なオプションをすべて表示」を選択します。

対象のテーブルにチェックが入っているか確認します。

圧縮で「gzip形式」を選択します。

gzipとは単一ファイルの圧縮に特化した圧縮形式です。zipでも圧縮することができますが、ファイルが1つの場合はgzipの方が圧縮が速く、ファイルサイズも軽量になります。
生成オプションの「追加コマンド」で「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」をONにします。

「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」は、移転先のデータベースをクリーンな状態から構築し、エラーなくインポートするためです。
移転先のデータベースに、同じ名前のテーブルが既に存在していた場合、インポート時にエラーが発生する可能性があります。このオプションにチェックを入れることで、事前に既存のテーブルを削除し、インポート先のデータベースをクリアな状態にします。
「エンコーディングへの変換」が「なし」になっていることを確認して「エクスポート」をクリックします。

拡張子が.sql.gzというフォルダがダウンロードできます。

Xserverにデータベースをインポートする
データベースの作成
まずは旧サーバーのデータをインポートするためのデータベースを作成します。
サーバーパネルにログインして「データベース > MySQL設定」をクリックします。

「MySQL追加」タブをクリックして、データベース名を入力し「確認画面へ進む」をクリックします。

「追加する」をクリックします。

ユーザーの追加(MySQLユーザー)
続いて、作成したデータベースにアクセスできるユーザーの設定を行います。
「MySQLユーザー追加」タブをクリックして、ユーザーIDとパスワードを入力し「確認画面へ進む」をクリックします。

「追加する」をクリックします。

「MySQL一覧」タブをクリックして、対象のデータベースの「アクセス権未所有ユーザー」で先ほど作成したユーザーを選択し「追加」をクリックします。

以下のように表示されたら設定完了です。

SQLファイルのアップロード(インポート)
次に、XserverにダウンロードしたSQLファイル(圧縮版)をアップロードします。
サーバーパネルの「データベース > phpmyadmin」をクリックします。

先ほど作成したユーザーの「ユーザー名」と「パスワード」を入力して「ログイン」をクリックします。
対象のデータベースを選択して「インポート」タブをクリックします。

「ファイルを選択」で旧サーバーからエクスポートしたファイルを選択し、一番下の「インポート」をクリックします。


「インポートは正常に終了しました」と表示されればデータベースのインポート処理は完了です。

wp-config.phpの編集
新たに作成したデータベースに移行し、ユーザー名やパスワードを変更したので、それらの情報をWEBサイトに反映させる必要があります。
サーバーパネル上部の「ファイルマネージャー」を選択します。

対象のドメインを選択し「public_html」ディレクトリに入ります。
wp-config.phpファイルを選択して上部の「編集」をクリックします。

以下の4つを、Xserverのデータベースの情報に合わせて書き換えます。
- define(‘DB_NAME’, ‘データベース名’);
- define(‘DB_USER’, ‘ユーザー名’);
- define(‘DB_PASSWORD’, ‘ユーザーパスワード’);
- define(‘DB_HOST’, ‘localhost’);
/** WordPress のためのデータベース名 */
define('DB_NAME', 'データベース名');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'ユーザー名');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'ユーザーパスワード');
/** MySQL のホスト名 */
define('DB_HOST', 'localhost');
以上でデータベースの移管は完了です。
ネームサーバーの変更
ファイルとデータベースの移行が完了したら最後にドメインのネームサーバーの変更を行います。
これにより、対象のドメインのURL(https://xxx.com)にアクセスしたときに、旧サーバー(Lolipop)ではなく新サーバー(Xserver)にアクセスするようになります。
ネームサーバー変更時の注意点
ネームサーバーを変更するときは以下に注意してください。
- ネームサーバーを変更しても即座に切り替わらない。数時間~72時間ほどかけて徐々に旧サーバーから新サーバーに切り替わる
- 完全に切り替わる前にサイトにアクセスするとWEBサイトが表示されないことがある(時間が必要)
- 切り替え中は、旧サイトと新サイトのどちらにつながるかわからない。
- 切り替え中に対象のサイトにブログ記事アップなどの変更を加えない。
ネームサーバー変更にかかる時間
ネームサーバーの変更が完全に反映されるまでには、通常数時間から最大72時間程度かかります。
世界中のコンピュータは、一度アクセスしたウェブサイトのIPアドレスを一時的に記憶する「DNSキャッシュ」を持っています。
このキャッシュが古い情報を持っていると、新しいネームサーバー設定が反映されず、古いウェブサイトが表示されてしまうことがあります。
また、インターネットは非常に広大なネットワークであり、変更情報が世界中のDNSサーバーに伝わるまでには時間がかかります。
ネームサーバーを変更したときに、「.jp」「.co.jp」などのccTLD(国別コードトップレベルドメイン)は適用が非常に早く、数分から数時間程度で完了します。
.comなどのgTLD(汎用トップレベルドメイン)は数時間から72時間程度かかります。
「.jp」「.co.jp」などのccTLDドメインは日本ネットワークインフォメーションセンター(JPNIC)が管理しており、比較的更新頻度が高いため、短時間で反映されることが多いです。
切り替え初期段階のエラーメッセージ
ネームサーバーを切り替えた初期段階に、新サーバーにアクセスした場合以下のようなエラーメッセージが表示されることがあります。
変更適用中なので、数時間後にアクセスすれば表示されるようになります。
切り替え中に対象のサイトにブログ記事アップなどの変更を加えない
切り替え中は、旧サーバーと新サーバーのどちらにアクセスするかわかりません。完全に切り替えが完了するまではブログ記事のアップなどの変更を加えるのは避けた方が無難です。
後で、データベース再度移管やメディアファイルの移管などの追加処理が発生する可能性があります。
ネームサーバーの変更
ネームサーバーを変更するには、ドメインを契約したサービスにログインする必要があります。
ここでは、ムームードメインでネームサーバーを変更する方法について解説します。
サイトにログインしたら、ドメイン一覧から移管対象のドメインを選択し「ネームサーバー設定変更」を選択します。


今回はXserverを利用するので「GMOペパボ以外のネームサーバーを使用する」を選択し、ネームサーバーを以下のように変更します。

- ネームサーバー1: ns1.xserver.jp
- ネームサーバー2: ns2.xserver.jp
- ネームサーバー3: ns3.xserver.jp
- ネームサーバー4: ns4.xserver.jp
- ネームサーバー5: ns5.xserver.jp

入力が完了したら下部の「ネームサーバー設定変更」をクリックします。

「ネームサーバの設定を変更しました」と表示されたら完了です。

「取得したドメインで使用する」でも同じようにネームサーバーを入力することができます。これは、「GMOペパボ以外のネームサーバーを使用する」とはレコードが異なるので、間違って選択しないようにしてください。

ネームサーバ1,ネームサーバー2のように、ネームサーバーを複数設定する主な理由は信頼性と可用性を向上させるためです。
1つ目のネームサーバーにアクセスできなかった場合、2つ目のネームサーバーにアクセスし、それもダメならネームサーバー3のように接続していきます。
このため、アクセスの集中や自然災害や攻撃など、予期せぬ事態が発生した場合でも、複数のサーバーが分散配置されていることで、システム全体が停止するリスクを軽減できます。
https化する(SSL設定)
最近のWEBサイトはhttps化しているのが当たり前になっています。
各レンタルサーバーで無料のhttps化ができるようになっています。このhttps化はサーバーごとの設定のため、サーバーを移管した場合は新しく設定する必要があります。
Xserverのサーバーパネルに入って「ドメイン > SSL設定」をクリックします。

登録しているドメインの一覧が表示されます。対象のドメインの「選択する」をクリックします。

https化が可能になるのは、Xserver側でネームサーバーの切り替わりが確認できてからです。
ドメインの横に「NS相違」と表示されているときは、https化ができません(しようとしてもエラーが発生します)
「変更」をクリックします。

「ONにする」をクリックします。
しばらくして「設定中」と表示されればSSL化を実行しています。数時間ほど経過すれば以下のようにSSLがONになります。

以上で、Lolipop(ロリポップ)からXserver(エックスサーバー)へのレンタルサーバー移管は完了です。
ネームサーバーの変更が適用されてか確認する方法
ネームサーバーの変更が適用されてか確認する方法については下記をご参考ください。