先日、友人のWordPressサイトをサーバー移転させたので、方法を共有します。
今回はお名前.comのレンタルサーバーからXserverに移転させる作業を例に説明していきますが、他のサーバーでも同様かと思います。ちなみにお名前.comはドメイン取得するだけなら良いんですが、レンタルサーバーはオススメできないです。
サーバー移転は初めてやるとエラーになったりで色々大変かと思います。頑張りましょう。
Xserver公式のWordPress移行手順と見比べながらどうぞ。順番違うのはすみません。
準備
移転先アカウント準備
サーバー移転の作業を行う前にまずはアカウントを準備します。
今回の例だと当たり前ですが、お名前.comのアカウントはすでに作成済です。
Xserverのアカウントを作成していない人は作っておいてください。
移転先ドメイン準備
ドメイン設定から、移転させたいサイトのドメインを登録しておいてください。
[無料独自SSLも利用する]にチェックを入れとくと後で幸せになります。
移転先データベース準備
Xserverのデータベースも準備します。
[MySQL設定]の[MySQL追加]で任意のデータベースを作成します。
[MySQLユーザー追加]でそのデータベースにログインできるユーザーを作成しちゃいます。
[MySQL一覧]タブで、作成したデータベースの[アクセス権所有ユーザ]を追加しときます。あとで使うのパスワード忘れないように。
移転元データのエクスポート
次は移転元サーバー上のファイルデータとデータベースのデータをローカルである自分のPCに落としてきます。
ここは色々やり方があるのですが、王道パターンと僕がやってた邪道パターンを紹介します。
FTP接続で移転元サーバーのファイルをコピー(王道)
FileZillaなどのFTPソフトを使って移転先サーバーにアクセスします。
FTPアカウントは移転元サーバーの設定で確認できると思います。こんな感じ↓の設定画面でFTPの項目があるはずです。
接続できたら、[ドメイン名]のディレクトリがあるのでその直下のファイル群を全部ローカルに落とします。結構時間掛かりますし、サーバーの質が悪いと転送失敗します。転送失敗したファイルは後から再転送できるのでご安心を。お名前.comは僕の経験上、100%失敗します。
ちなみにお名前.comのサーバーにおける[ドメイン名]のディレクトリ構成は下記のようになっていました。今の段階だと、.well-knownとphpmyadminは無いはずです。wpディレクトリ下に主要なファイル群があるのが特徴です。
データベースのデータをエクスポート(王道)
phpmyadminでデータベースのデータをエクスポートします。
お名前.comは悲しいことにデフォルトでphpmyAdminが導入されていないので、こちらの手順に従って頑張ってください。
僕は面倒だったので後述する邪道なやり方でけりを付けました。データベースのデータエクスポートだけなら下記手順で紹介する「BackWPup」を使うのがオススメです。
後日別サイトを移転する際に、phpmyadminの導入からやってみましたが、とても面倒でした。WAF (Web Application Firewall) の設定は無効にしておきましょうね!ファイアウォールが邪魔してデータベース用のサーバーを作るのに苦戦してしまいました。無効にした後も1時間半くらいは反映されないし大変でした。
「BackWPup」でサーバーもデータベースも一緒にバックアップ(邪道)
本来であればサーバーのファイルデータはFTPでファイル取ってきて、データベースはphpmyadminとかでエクスポートする必要があるのですが、僕はWordPressのバックアップ用プラグインである「BackWPup」を上手く使いました。
「BackWPup」でサーバーファイルやデータベースをバックアップしといて、ダウンロードしておきます。
僕的には楽だったんですけど、サーバー上のフォルダ構成や必要ファイルを考えたりとややこしくなるので、あんまりオススメしないです。
ただ、データベースだけバックアップする設定も容易に可能なので、phpMyadminの導入が面倒な人はこれがオススメです。
サーバーデータ移行
一般的な方法
ローカルに落としてきたファイル群を移転先サーバーに移動させます。
その前にwp-config.phpというファイルの中身を書き換えます。[ドメイン名]フォルダもしくは[ドメイン名]/wpフォルダにあるかと思います。準備段階で作成したデータベース名とユーザー名、パスワード、そしてXserverのサーバーホスト名を書き換えて、保存します。
早速FTPでXserverのサーバーに接続するのですが、その際のホスト名やユーザー名はXserverのFTP設定で確認します。サブFTPアカウントを作ると良いと思います。パスワード忘れてもまたサブアカウント作り直せば良いだけなので便利。削除も簡単なので、誰かに作業お願いするときとかは重宝しますね。
FTP接続できたら、移転元サーバーから落としてきたファイルを[ドメイン]/public_htmlフォルダ下にコピーします。サブドメインを移行する場合はまたパスの位置が変わるので、要注意です。
コピーした後のフォルダ構成がかなり重要で、移転元サーバーと同じ構成になるようにしないと、移転後のサイトで画像とCSS/JSファイルが読み込めなくなります。ちなみにバックアップ用プラグインの「BackWPup」で取得してきたサーバー上のファイル群ってwpフォルダ下のファイル群なんですよ。しかも必要のないファイルも入っています。さらに注意で、public_html下に持っていくのは、wpフォルダと.htaccess、index.php、php.iniです。つまり、「BackWPup」で持ってきたファイル群をwpフォルダにまとめて、別途.htaccess、index.php、php.iniを持ってくる必要があります。なのであんまり詳しくない人は「BackWPup」で取ってきたファイルをコピーさせるのはオススメしないです。使うなら、データベースだけに留めましょう。参考サイト:《初心者向け》BackWPupの復元方法を画像たっぷりで解説
簡単移行を使う方法
今更ですが、FTPとかよく分からんって人はXserverが用意しているWordPress簡単移行を使っても良いかも。
データベース移行
Xserverは優秀なのでphpmyadminがデフォルトで導入されています。準備で作成したデータベース用アカウントでログインします。
使用するデータベースを左から選択して、移転元のデータベースをインポートします。[ファイルを選択]というところからファイルを選択して、[実行]を押します。
動作確認
こちらを参考に、hostsファイルを編集して動作確認しましょう。
安全なサイトではないという警告が出て表示されない場合は、SSL設定が必要です。ここがまた少し厄介で、FTPで.well-knownフォルダを作って、指定されたファイルを置く必要があります。
ネームサーバー変更
表示に問題なければ、ネームサーバーを下記のXserver用のネームサーバーに変更します。僕の場合は、変更後数分で反映されましたが、安定するのに24時間程度かかります。
お名前.comでネームサーバーを変更する場合はお名前ドットコムで取得したドメインをエックスサーバーで使うための設定方法を参考にしましょう。
まとめ
備忘録的な感じで端折って書きましたが、大体の流れは以上です。
僕も初めてだったので、結構時間掛かっちゃいました。FTPソフトでWordPressのレンタルサーバーに接続すること自体初めてでした。
質問くらいであればtwitterで受け付けるので、気軽にどうぞ。代わりにやってくださいとかは仕事案件にさせてくださいな。
Xserverはやはりかなり優秀で、サイトはだいぶ高速化されました。めでたしめでたし。
かなり分かりやすいサイト発見。
コメント