仕事の関係で月に1度くらいworpressの移転作業をやっています。
- wordpressを別のドメインに載せ替えたい
- wordpressを別のサーバに移転したい
なんてことが良くあります。
色んな方法があるんですが、最近僕が行っている一番簡単な方法をメモしておきます。
新しいドメインに引っ越すパターンと、同じドメインで別のサーバに引っ越すパターンの2パターンで説明します。
※ここではサーバBを、仮にXSERVERとして話を進めますが、他のサーバでも同様です。
新しいドメインに引っ越すパターン
まずは、新しいドメインに載せ替えるパターンです。こちらのほうがやや簡単。
ドメインA→ドメインBに載せ替え。
サーバもサーバA→サーバBに引っ越すこととします。
新しい環境を用意する
ドメインBとサーバBの環境を新しく用意し、wordpressをインストールしておきます。
All in one migration プラグインをインストール
All in one migrationは、現在のwordpressの設定やテーマ、プラグイン、ユーザ、投稿の情報などをマルっとバックアップ・リストア出来るプラグインです。
サーバA、サーバBともに、All in one migration プラグインをインストールします。
サーバAからデータエクスポート
All in one migrationの画面から、エクスポート>ファイルを選択します。
しばらく待つと、
ダウンロードリンク(緑の枠)が現れるので、クリックすると、エクスポートデータをダウンロードできます。
※このキャプチャの場合3GBとなっているので、このままではデータ大きすぎるので工夫が必要です。
サーバBにデータをインポート
新しいサーバの方のAll in one migrationから、インポートを選択。
しばらく待つと、、
インポートすると、全て上書きされるけど良いですか?と聞かれるので、PROCEEDをクリック。
インポートは以上なんですが、最後にパーマリンクの設定を上書きする必要があります。(これをしないとリンク切れなどが起きたりする可能性があるので、忘れずに対応しましょう)
Permalinks Settingsをクリック。もしくはサイドバーの設定>パーマリンク設定をクリック。
特に何もいじらず、「変更を保存」ボタンをクリックしましょう。これでパーマリンクの上書きも完了です。
ログインし直して確認
自動的にログアウトされたら、ログインし直して、諸々確認してみましょう。
投稿や設定など間違っていなければ、完了です。
ドメインA、サーバAを閉じる
そのまま閉じてしまっても良いんですが、SEOや今までのユーザのことを考えると、旧ドメインにアクセスしてきたものを301リダイレクト掛けて置くといいと思います。
サーバAの.htaccessに以下の記述を入れます。
RewriteEngine On
RewriteCond %{http_host} ^ドメインA
RewriteRule ^(.*) http://ドメインB/$1 [R=301,L]
こんな感じです。
サーバによって.htaccessが使えなかったりする場合もあるかも知れませんが、その場合は利用しているサーバ管理者に確認してください。
旧環境はしばらくこのままにしておいて、数ヶ月程度したら解約してしまっていいと思います。
以上で完了です。
同じドメインで別のサーバに引っ越すパターン
ドメインAはそのまま、サーバA→サーバBに引っ越す場合のやり方です。
新しい環境を用意する
サーバBの中に、ドメインAの環境を作り、wordpressをインストールしておきます。
その際、新しいサーバの方のwordpress画面見たくても、ブラウザでURLにアクセスして見えるのは、サーバAに置いてあるwordpressの画面です。
前述のAll in one migrationでインポートを行う際には、サーバBのwp-adminに入る必要があるので、どうすればいいかというと、、
XSERVERなんかだと、動作確認用URLというのを発行してくれるので、それを見るのも一つの手です。
本機能は、サーバーに設定された独自ドメインに対して、動作(表示)を確認するためのURLを追加する機能です。
こちらの機能を利用することにより、サーバー移転時のネームサーバー切り替え前に、該当ドメイン領域にアップロードしたホームページの表示を確認することができます。 動作確認について | レンタルサーバーならエックスサーバーレンタルサーバー「エックスサーバー」のご利用マニュアル|サーバー移転作業に際して、ネームサーバーの変更前に動作・表示を確認できる「動作確認URL」機能とhostsファイルの編集方法のご案内です。
Hostsファイルを設定する
一般的にはこちらのやり方になるでしょう。
「ドメインAでアクセスすべきサーバはサーバAである」というのはドメインAのDNSレコードで設定されているため、ドメインAにアクセスすると、世間一般の人はサーバAに誘導されるわけですが、Hostsファイルをいじると、自分だけはサーバBを見に行く、ということが出来ます。
Hostsファイルは/private/etc/hosts(Macの場合)にありますが、もっとお気軽にGUIで作業する環境設定のツールがあります。
Hosts.prefpane
PermanentMarkersSoftware by permanentmarkers.
の、Download ZIPをクリックし、ダウンロードしたらインストールします。
環境設定パネルに「Hosts」の項目が出来ています。
設定方法は、IPアドレス+ホスト名です。
つまり、仮にサーバAが100.100.100.100というIPで、本来、何も設定しないとそこに誘導されるところ、サーバBのが仮に200.200.200.200だとすると、
200.200.200.200 サーバBのホスト名
という設定をすると、自分だけは、ドメインAのURLをブラウザで見ると、サーバBにアクセスできます。
サーバAからデータエクスポート
一旦Hostsの設定は切っておき、サーバAから、All in one migrationでデータをエクスポート。先程全く一緒です。
サーバBへデータインポート
ここでHostsをオン。該当のレコードのチェックボックスをチェックすればOK。
表示がサーバAから切り替わらない場合は、キャッシュされているかも知れません。
しばらく待つか、ブラウザを変える、シークレットウィンドウで開く、などすると、Hostsが反映された状態でサーバBが見えると思います。
あとは、先程の手順と同じようにインポートするだけです。
パーマリンク設定も同じように行いましょう。
DNSレコード設定
チェックなど全て完了したら、最後にドメインの設定でDNSレコードを切り替えます。
サーバAとサーバBで会社が違えば、ネームサーバごと切り替えるのが楽です。
サーバBがXSERVERなら、ネームサーバの設定はこの通り。
- ns1.xserver.jp
- ns2.xserver.jp
- ns3.xserver.jp
- ns4.xserver.jp
- ns5.xserver.jp
ネームサーバは別のサーバを使う場合は、Aレコードを向けるだけでも良いでしょう。
注意)旧サーバでメールアドレスを利用していた場合、新サーバには反映されないので、予め登録して置きましょう。そうしないとDNSの向きが変わった際に、メールが届かなくなります。
難しかったらご相談下さい
僕はwordpressの割と黎明期からwordpress案件に携わっています。
(当時ブログシステムと言えば、NucleusやMTなんかもありましたね)
wordpress移転やカスタマイズなど、worpdressに関する業務を多数行っているので、
wordpressサイトにおすすめのレンタルサーバ
最後に、僕がこれまで数十と(100以上かも)wordpressを使ったサイト構築に使ったサーバの中で、おすすめなサーバを紹介しておきます。
XSERVER(エックスサーバー)
いくつかレンタルサーバサーバを使って来ていますが、安い、早い、安定と3拍子揃ったXSERVER。
■エックスサーバーの特長
運用サイト数は150万件を突破! コストパフォーマンスに優れたサーバーとして 多くのお客様にご好評をいただいております。
エックスサーバーは高速・多機能・高安定性のそれぞれの観点において、
下記特長を備えています。▼ 高速サーバー
- 高速性を重視し、最新24コアCPU(Xeon Goldシリーズ) +256GBメモリ+オールSSD RAID10を採用!
- 総計912Gbpsの国内高速バックポーン!(2018年5月現在)
- FastCGIやキャッシュモジュールに対応!PHP高速化や負荷軽減を図ることが可能!
- 高速Webサーバー「nginx」に対応!
- 「HTTP/2」対応でWebサイトを高速表示!
▼ 充実の多機能
- 月額900円(税抜)から、大容量200GBからの高コストパフォーマンス
- マルチドメイン・メールアドレス無制限!
- 独自SSLを無料で利用可能!
- 操作性を重視した簡単操作のサーバー管理ツール!
- PHP7などの幅広い言語に対応!
- SSHやcronによるコマンド、プログラムの実行も可能!
- WordPressやショッピングカートを簡単インストール!
▼ 高い安定性
- 安定のサーバー稼働率99.99%以上
- お客様データの消失を防ぐ、自動バックアップ機能を標準提供!
- 初心者でも安心の24時間365日メールサポート!
- 電話サポートあり!専任スタッフがご対応いたします
太字で書いたところが特におすすめですね。
XSERVERは、同じ共有サーバ内に、もしリソース食いの同居者がいたりして、動作が重いと感じたりした場合、別のサーバにサクッと乗り換えることが出来たり、スペック違いのプランの変更も簡単なので、まずは最安プランで契約しておいて、状況に応じてプランを変更する事が可能です。
いくつかサーバレンタルしていますが、XSERVERは主力の1つです。
法人向けのプランもあるので、法人ユースも安心です。
逆に、このサーバは絶対やめたほうが良い!というのもいくつかあるんですが、ちょっとここに書くのもなんなので、知りたかったらこっそりお教えします。