WordPressで構築したWebページを専用プラグインを使用せず新規に契約した別サーバーへ引っ越しする際に実施した作業手順を記録してみました。
内容は簡単にまとめてみましたが、実際のサーバー移転にはデータ転送に多くの時間とデータベースの移行に若干の知識が必要でした。
なお、サーバー移転は扱っているデータの種類や量、専用プラグイン利用の有無、移転元や移転先の運用環境などにより異なります。
目次
他社サーバーへのサイト移転【概要】
WordPressを別サーバーに移転させるための便利なプラグインも存在しますが、理屈が分かっていれば手動で充分なのとプラグインが上手く機能しなかった場合に対処方法で躓きそうなので、今回は基本に従い手動で移行することにしました。
契約サーバーの変更に伴うWordPressコンテンツ引越しは次のような作業が必要になります。
- 移転先のサーバー契約
- データベースのエクスポート
- データのバックアップ
- 移転先サーバーへデータ転送
- データベースのインポート
- wp-config.phpの編集
- ネームサーバーの設定
- SSL設定
- 動作確認
- 場合によりドメイン移管と旧サーバーの解約
データベースのエクスポートとデータのバックアップ(ダウンロード)、ネームサーバーの変更は移転元の旧サーバーへアクセスして作業を行いますが、それ以外は移行先のサーバーを使用して作業します。
WordPressの引っ越し手順【詳細】
大まかな流れは上に書いた通りですが、以下のような要領で進めました。
移転先のサーバー契約
サーバーの移行にあたって、まず移転先のサーバーを申し込みデータを移せる環境を整えます。
FTPパスワードの作成(確認)や転送先のディレクトリの場所などを把握しておきます。
WordPressコンテンツの規模によっては、お試し期間に使える機能が自分の条件に合っていれば動作確認を済ませた後にキャンセルも出来そうです。
データベースのエクスポート
次に、データの転送を行う前に移転元のサーバーからデータベースをローカルPCにエクスポートします。
SQLの知識が必要ですが、phpMyAdminなどのツールを使えば簡単にパソコン側へエクスポートできます。
データベースのエクスポートはサーバーのデータをダウンロードしてからでも構いませんが、データのダウンロードには時間を要しますので、先にデータベースだけ済ませてしまいました。
データのダウンロード
移転元のサーバーから現在使用しているデータを一括でダウンロードします。
ダウンロードにはFTPソフトを使用しましたが、私の環境では1つのWordPressサイトで3時間かかったものもありました。
FTPソフト(アプリケーション)はFileZillaかFFFTPが一般的のようで今回はFFFTPを使用しています。
ダウンロードは時間がかかり、とてもPCの前で待っていられないので夜間にダウンロードしたり、残り時間が多ければ外出したりして過ごすことにしました。
Webページの引越が成功すれば現在のサーバーを解約したかったので、データは全てダウンロードしています。
移転先サーバーへデータ転送
続いて、ダウンロードしたデータを今度は新しいサーバーへアップロードします。
これもFTP接続でアップロードを行います。
アップロード場所は、契約したサーバーの仕様をチェックしました。
アップロードもデータが多ければ時間がかかるので、使わないWordPressテーマなどは旧サーバーにある時点やダウンロードしたPCで削除しておいたほうが効率的です。
データベースのインポート
データの移動が全て済んだところで、先に移転元から取得していた(エクスポート済み)データベースを移転先のサーバーへインポートします。
データベースのインポートは、移転先の新サーバーで稼働させるWordPressの数分データベースを新しく作成しユーザーを割り当て、そのデータベースへWordPressでしようするテーブルをインポートさせる手法で行うようです。
このデータベースの移転に関しては、どこの説明サイトでもデータベースのインポートと表現されていますが、実際の流れは移転先で新しいデータベースとユーザーを作成し、そこへテーブルを移すような仕組みです。
私が移転先として新規に契約したサーバーでは、コントロールパネルで新しいデータベースを(サブドメインなどを使う際はサイトごとに数個)作成し、そこへphpMyAdminを使ってインポートさせるという手法でした。
wp-config.phpの編集
データとSQLデータベースの移行が済んだところで、WordPressの設定ファイルであるwp-config.phpを編集します。
書き換えが必要なのは、データベース名、ユーザー名、パスワード、データベースの場所です。
ここで、ふと興味が湧いたのですが移転元のサーバーでMySQL用のポートが開いていれば、データベースを移さなくても移行先のサーバーでWordPressを動かすことが可能なのかもしれません。
わざわざ、CMSのデータベース用だけに契約を継続するのも無駄ですし意味がないですが興味はありますね。
ただし、セキュリティー上MySQLのポートを解放しているサーバー会社は殆どないと思われます。
ネームサーバーの設定
Webサーバーの引越しというと最終的にドメイン移管の手続きが必要とばかり考えていましたが、とりあえず移行を検討しているサーバーを試用期間を使い試すだけなら現在使用しているサーバーでネームサーバーを試用中のサーバーへ割り当てて見るのが良いかもしれません。
ネームサーバーの変更をしてWebサイトが正常に表示されるのが確認できてから、料金を支払い本契約をすれば安心です。
ネームサーバーの変更は移行元のサーバーで行います。
私が利用していたサーバーでは、契約情報ページからネームサーバー変更の項目へ進んで手続きが可能でした。
このネームサーバーの変更について気をつけなければならないのが、最終的に動作の確認が済んでから移転先へ「ドメイン移管」をしたいならば、使用中の独自ドメインの有効期限が30日以上残っている必要があるようです。
有効期限が30日以上ない独自ドメインは、現在使用しているサーバーで有効期限を延長させてからでないと移管の手続きが出来ない仕組みになっています。
たとえば、移転元の旧サーバーの契約期間を目一杯使い切ってから新しいサーバーへ移転しようと思っても、独自ドメインの有効期限が迫っていればそのままではサーバーの乗り換えができません。
元の契約で有効期限を延長させてから移管申請を行う必要があります。
SSL設定
最近では無料SSLが使用できるサーバーが多いようで設定もそれほど難しくはないようです。
こちらも、新しいサーバーのコントロールパネルから行いました。
SSLの設定は浸透が済むまでブラウザでWebページ表示がされず、1時間ほど反映に時間がかかるようでした。
動作確認
WordPressの引越しについて、以上の一連の流れが済んでSSLが正確に適用された時点でブラウザでWebページの表示が可能な状態になります。
これら一つ一つの作業は、ちょっとした専門知識を要するものですが、間違いなく正確に手順を進めて行けば移行先で今までと同じWordPressを運用することが可能です。
動作の確認は済んだけれども、やっぱり元のサーバーで充分だというような場合は、ネームサーバーの設定を元に戻せば従来のサーバーで運用が継続できます。
今回は新しいサーバーでスムーズに運用できそうでしたので、元のサーバーでのSSLの設定は速やかに解除しました。
このSSLの解除ですが、もし最初からサーバー移転の意志が固いならSSLの設定解除は先に済ませておいたほうが良さそうです。
遅れるとサーバー会社からエラーの通知がメールで届きます。
後は移行元のサーバーでドメイン移管の手続きや解約を行うなど、あるいは別サイトの運用を始めるなど好きに処理することになります。
まとめ
全く別会社のサーバーへWordPressを移行させる作業は今回が初めてです。
少し不安だったのは、メールサーバーの動作確認が無料の試用期間では出来なかったことでした。
もし転送先でメールサーバーの設定に戸惑ったら、フォームメールもWordPressのプラグインに頼ってしまうのも一つ解決方法です。
それから、WordPress以外に静的コンテンツを公開している場合など、別途Apacheのhtaccessの編集やNginxへの乗り換えによる設定なども必要になってくるので、これらの事前調査は必須と言えるでしょう。
それ以外は、移転もとでのDNS変更による独自ドメインの使用、サブドメインの使用、CNAME設定なども無料期間中に操作が可能でした。
今回、移転先に契約したのは有名な某ぺけサーバー。
とうとうあちら側のサーバーへ移ることになってしまったのは私の技術力の不足による物なのか、その解明はボチボチで良いかなと思います。
初めて体験したスペックや仕様が異なる別サーバーへの移転でしたが、今回行った手順のうち自分にはどの知識があるか、知識のない手順はどれかを明確にしておけばサーバー移転のハードルは低くなるのではと思います。
移転が上手く行かずせっかく積み上げてきたコンテンツが台無しになるのは最も心配なところです。
無料試用期間を有効に活用し、スムーズに進まなかったら後戻りも覚悟の上で望むのも一つの手です。
すんなり移転が済めばラッキーくらいの心構えのほうがサーバーの引越しは楽かもしれません。