1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

さくらインターネットからXserverにサーバーを移行してみた

Last updated at Posted at 2022-11-08

背景

インターンをしている企業で、WordPressでサイトを一から作成し、運用を行っています。
今回、さくらインターネットからXserverへサーバーを移行したので、手順を書き留めておきます。

手順まとめ

1. Xserver(移行先)での事前準備

  • ドメインの追加
  • SSL設定の追加
  • DBの作成

2. さくらインターネット(移行元)のデータをダウンロード

  • DBのエクスポート
  • サイトデータのダウンロード

3. Xserverにデータをアップロード

  • DBのインポート
  • サイトデータのアップロード

4. 動作確認

5. ネームサーバー移行

1. Xserverでの事前準備

ドメインの追加

Xserverのサーバーパネルにログインし、【ドメイン設定】>【ドメイン設定追加】からドメインを追加します。
ドメイン名は、移行元(さくらインターネット)のドメイン名と同じものを入力します。
image.png
ドメインの反映には最大24時間程度かかるので、ドメインの追加は先にやっておいた方がいいです。
参考 ▶️ Xserver公式ドキュメント:ドメイン設定

SSL設定の追加

※上記「ドメインの追加」を行なった際に、SSLを設定していればこの手順はやらなくてOKです。

Xserverのサーバーパネルにログインし、【SSL設定】>【独自SSL設定追加】で、該当のドメインを選択し、SSL設定を追加します。
反映には最大1時間程度かかります。

DBの作成

Xserverのサーバーパネルにログインし、【MySQL設定】>【MySQL追加】からDBを追加します。
image.png
次に、【MySQL設定】>【MySQLユーザ追加】からユーザを追加します。
image.png
その後、【MySQL一覧】に移動し、先ほど作成したDBの「アクセス権未所有ユーザ」のところで先ほど作成したユーザを選択し、「追加」をクリックします。
「アクセス権所有ユーザ」のところに作成したユーザが追加されていればOKです。

MySQLデータベース名」「MySQLユーザID」「パスワード」は後ほど使用するので、控えておいてください。

2. さくらインターネット(移行元)のデータをダウンロード

DBのエクスポート

さくらインターネットのサーバーコントロールパネルにログインし、【Webサイト/データ】>【データベース】>【phpMyAdminログイン】に移動します。
image.png
左のタブからエクスポートするDBを選択し、「エクスポート」に移動します。
「エクスポート方法」で「詳細」を選択し、下の方の「生成オプション」で「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」にチェックを入れ、「実行」をクリックします。
image.png
hogehoge.sqlという名前でDBがエクスポートされます。

サイトデータのダウンロード

ローカルでコマンドを実行してサイトデータをダウンロードします。
ユーザー名は、サーバーコントロールパネルにログインする時のユーザー名を使用してください。

# さくらインターネットのサーバーにログイン
$ ssh ユーザー名@ユーザー名.sakura.ne.jp

# WPサイトフォルダに移動
$ cd /home/ユーザー名/www/WordPressサイトフォルダ

# サイトデータを圧縮(wordpress.zipは任意の名前でOKです)
$ zip -r wordpress.zip .

# ログアウト
$ exit

# zipファイルをダウンロード
$ scp ユーザー名@ユーザー名.sakura.ne.jp:/home/ユーザー名/www/WordPressサイトフォルダ/wordpress.zip ./

3. Xserverにデータをアップロード

DBのインポート

Xserverのサーバーパネルにログインし、【phpmyadmin】に移動します。
左のタブから作成したDBを選択し、「インポート」に移動します。
「インポートするファイル」でエクスポートしたhogehoge.sqlのファイルを選択し、「実行」をクリックすれば完了です。

もしこの時エラーが出た場合は、エクスポートしたデータの形式が間違っている可能性があるので、エクスポート時のオプションが間違っていないか見直してみてください。

サイトデータのアップロード

アップロードの前に、wp-config.phpファイルを編集する必要があります。
ダウンロードしたサイトデータのzipファイルを解答し、wp-config.phpファイルを開いて以下の部分を書き換えてください。

/** The name of the database for WordPress */
define('DB_NAME', 'MySQLデータベース名');

/** MySQL database username */
define('DB_USER', 'MySQLユーザーID');

/** MySQL database password */
define('DB_PASSWORD', 'パスワード');

/** MySQL hostname */
define('DB_HOST', 'ホスト名');

「MySQLデータベース名」「MySQLユーザID」「パスワード」は、DBの作成時に使用したものを記入してください。
「ホスト名」は、Xserverのサーバーパネルにログインし、【MySQL設定】>【MySQL一覧】の下の方に書いてあるものを記入してください。
image.png

wp-config.phpファイルを編集したら、サイトデータを再度zip圧縮します。

サイトデータをサーバーにアップロードするのですが、SSH接続して行う必要があるので、先にSSHの設定をします。

参考 ▶️ Xserver公式ドキュメント:SSH設定

秘密鍵(サーバーID.key)がダウンロードできたら、以下のコマンドを実行します。

# .sshディレクトリがなければ作成
$ mkdir ~/.ssh

# 秘密鍵を.ssh配下に移動
$ mv ~/Downloads/サーバー名.key ~/.ssh

# 秘密鍵のファイル名を変更
# もし、「id_rsa」のファイルが既に存在していたら、任意のファイル名(例:id_xsrv_rsa)でOKです。
$ mv ~/.ssh/サーバー名.key id_rsa

# 秘密鍵のパーミッションを変更
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/id_rsa

# サーバーにアップロードサイトデータを
$ scp -P 10022 wordpress.zip ユーザー名@ユーザー名.xsrv.jp:/home/ユーザー名/ドメイン名/public_html/
# もし秘密鍵のファイル名がid_rsaでない場合はこちら
$ scp -i ~/.ssh/秘密鍵のファイル名 -P 10022 wordpress.zip ユーザー名@ユーザー名.xsrv.jp:/home/ユーザー名/ドメイン名/public_html/

# サーバーにログイン
$ ssh ユーザー名@ユーザー名.xsrv.jp -p 10022
# もし秘密鍵のファイル名がid_rsaでない場合はこちら
$ ssh -i ~/.ssh/秘密鍵のファイル名 ユーザー名@ユーザー名.xsrv.jp -p 10022

# 該当のフォルダに移動
$ cd ドメイン名/public_html

# zipファイルを解凍
$ unzip wordpress.zip

# wordpress配下のファイルをpublic_html配下に移動
$ cd wordpress
$ mv * ../

# 不要なファイルを削除
$ cd ../
$ rm wordpress.zip
$ rm -r wordpress

4. 動作確認

Xserverには「動作確認URLを追加して確認する方法」がありますが、WordPressを使用したサイトではその方法が使用できないので、ローカルのhostsファイルを編集して動作確認を行います。

mac OSでのコマンドは以下の通りです。

# hostsファイルをデスクトップ上に移動
$ mv /etc/hosts ~/desktop/hosts

# hostsファイルを編集(内容は以下)
$ vim ~/desktop/hosts

# hostsファイルを元の場所に戻す
$ mv ~/desktop/hosts /etc/hosts

hostsファイルの最下部に新しい行を追加し、「サーバーIPアドレス + (半角スペース) + ドメイン名(もしくはサブドメイン)」と入力します。

ドメイン名 hostsファイルの入力内容
example.com xxx.xxx.xxx.xxx example.com
test.example.com xxx.xxx.xxx.xxx test.example.com

「xxx.xxx.xxx.xxx」の部分には「サーバーのIPアドレス」を入力してください。
サーバーのIPアドレスは、Xserverのサーバーパネル内の「サーバー情報」で確認できます。

hostsファイルの編集が終わったら、ドメインにアクセスして動作確認ができます。

サーバー移行が終了したら、hostsファイルの編集内容は元に戻してください

参考 ▶️ Xserver公式ドキュメント:hostsファイルを編集して確認する方法

動作確認中に、「ページが見つかりません」というエラーが出た時

.htaccessファイルの設定が間違っている可能性があります。
WPのパーマリンク設定画面で、内容はそのままで「更新」すると直る場合があるので試してみてください。

参考 ▶️ WordPress(ワードプレス) 移行での不具合事例:トップページ以外表示されない

5. ネームサーバー移行

さくらインターネットのサーバーコントロールパネルにログインし、【ドメイン/SSL】>【ネームサーバー設定】に移動します。
【さくらのドメイン】>【Whois】>【ネームサーバーを編集】をクリックします。
image.png
image.png
ネームサーバからさくらインターネットのネームサーバを削除し、Xserverのネームサーバを追加して保存します。
image.png

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

参考 ▶️ Xserver公式ドキュメント:ネームサーバーの変更

参考にさせていただいたサイト

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?