Posted at

WordPress(Welcartも)をさくらサーバーからエックスサーバーにまるごと移転する方法。

More than 3 years have passed since last update.

さくらのレンタルサーバー スタンダードを利用してWordPress、Welcartを使用していたんですが、どうも不便な事が多い。

サイト全体をSSL化ができなかったり、WordPressが重かったり…事実「さくらサーバー 遅い」で検索するとそういう情報が結構載ってます。

グーグルのPageSpeed Insightsで評価してみるとサーバーの応答時間が1秒以上掛かってました。

てなことで簡単に移転する方法を自分用にメモのついでに説明します。


移転作業


移転元の作業

WordPressの管理画面からツール、バックアップ設定の項目からダウンロードを選択して「バックアップ!」を実行。

SQLのデータがパソコンにダウンロードされます。

さくらサーバーのサーバーコントロールパネルからファイルマネージャを開きます。

ファイルマネージャからWordPressが設置されてるフォルダを選択し、右クリックから「リモートで圧縮」を選択します。

設定項目はそのままで結構なので、「OK」を選択して圧縮します。

できたファイルのURLをメモっておきます。


移転先の作業

ドメインもそのまま使うと思うので、エックスサーバー ドメイン設定を参考にドメインを追加しておきます。


データベースの移動

エックスサーバーのサーバーパネルを開きます。

MySQLの設定を選択し、タブのMySQLの追加を選択します。

データベース名、エンコードを適宜設定しMySQLを追加します。

例:データベース名:wordpress エンコード:UTF-8

タブのMySQLユーザID追加を選択します。

ユーザID、パスワードを適宜設定してユーザを追加します。

例:ユーザID:admin パスワード:root

タブのMySQL一覧を選択します。

データベースのアクセス権所有ユーザにさきほどのユーザを追加します。

サーバーパネルのデータベース、phpMyAdminを開きます。

ユーザーとパスワードを訊かれるので、さっき追加したユーザーのIDとパスワードを入力してログインします。

インポートを開いて、バックアップしたSQLのデータを選択し右下の実行するを選択します。

何もなければ、保存が成功した画面が表示されると思います。


SSHの設定

さきほど圧縮保存したファイルを移転先に移動させるためにSSH接続できるようにします。

SSH設定を開いて、タブの「公開鍵認証用鍵ペアの生成」を選択します。

適当なパスフレーズを入力して鍵を生成します。この際に入力したパスフレーズは覚えておいてください。

鍵をダウンロードします。


データの移動

Tera Termなど適当なターミナルソフトをインストールして利用できるようにしておきます。

今回はTera Termを使います。

Tera Termの新しい接続のダイアログにホスト名を入力、TCPポートには10022を入力、「サービス:SSH」を選択します。

パスフレーズの欄には先程のパスフレーズを入力します。

RSA/…鍵を使うを選択し、ダウンロードした秘密鍵を選択します。

ログインに成功したら

cd (ドメイン名)/public_html

wget (圧縮ファイルのURL)

unzip (圧縮ファイル名)

http://hoge.com/(圧縮ファイル名)

でアクセスできるようになります。

もし、WordPress のアドレスを

http://hoge.com

にしたければ、ファイルすべてをpublic_htmlに移動させます。

(詳しいことは「ドキュメントルート」で検索してください。

セキュリティー上良くないとか色々あるみたいですが私にはよくわかりませんでした)

まだこの時点ではWordPressは動作しません。


wp-configの書き換え

展開したフォルダ内にあるwp-config.phpをvi wp-config.phpで編集するか、ダウンロードして適当なテキストエディタで開いて

以下の欄を適宜設定します。


wp-config.php

// ** MySQL 設定 - こちらの情報はホスティング先から入手してください。 ** //

/** WordPress のためのデータベース名 */
define('DB_NAME', 'wordpress');

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

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

/** MySQL のホスト名 */
define('DB_HOST', '*****.xserver.jp');

/** データベースのテーブルを作成する際のデータベースのキャラクターセット */
define('DB_CHARSET', 'utf8');


ファイルをアップロードして上書き保存すれば完成です。


DNSサーバーの設定

ドメインのネームサーバーの設定を移転先のネームサーバーに変更します。

今回はエックスサーバーなのでプライマリにns1.xserver.jp、セカンダリにns2.xserver.jpを設定しておきます。

1日くらい経って移転先のWordPressが表示されたら成功です。

どんなサーバーへの移転でも通用すると思います。

まるごと移転するので、テーマやプラグインを一から入れなおす必要が無いので簡単で楽だと思います。