こんにちは。ミタロウです。
WordPressで作られたサイトを別のサーバーへ移行(引っ越し)する方法を解説します。
プラグインを使用する方法もありますが、サーバーやサイトの環境次第ではエラーが出る事もありますので、プラグインには頼らず手動でやる方法をオススメします。
慣れてしまえば案外簡単ですし、Wordpressの仕組みを理解する事も出来るのでぜひ挑戦してみて下さい。
まずはWordpressの仕組みを知ろう
WordPressはデータベース(DB)とファイルで構成されています。
データベースには記事のテキスト(本文)や、プラグイン、テーマなどの設定が保存されています。
ファイルには画像やプラグインファイル、テーマを構成するファイルなどが保存されています。
WordPressのサイトではファイルとデータベースの二つが必要不可欠です。
ですのでどちらか一方だけバックアップを取ってうっかりドメイン削除などしてしまうとデータがサーバーから消えてしまうので、必ずファイルとデータベースの二つをバックアップしてからドメイン削除しましょう。
(うっかりドメイン削除などでデータが消えてしまった場合でも、各サーバーのバックアップ機能でデータを復活させられる可能性もあります。)
BackWPupの使い方【WordPressバックアップのやり方】
WordPressのサイトを別のサーバーに移行する手順
手順1:移行元の必要なデータファイルを全てダウンロードする
まずFTPソフトを使って移行元(引っ越し元)の必要なデータファイルを全てダウンロードします。
FTPソフトは何でも良いですがMacでもWindowsでも使えるCyberduckがおすすめです。
Cyberduckは無料なのですが、もし使ってみて気に入ったら製作者に寄付してあげて下さい。
Cyberduckのホームページから直接ダウンロードすれば無料で使えるのですが、App Storeからダウンロードする場合には有料となってしまいます。
他にもFilezillaやFFFTP(こちらはWindows版のみ)も定番ですね。
コチラのページでCyberduckとFilezillaでのサーバー接続方法を詳しく解説していますので、よく分からない方は参考にしてみて下さい。
FTPソフトとサーバーを接続する方法【CyberduckとFileZillaの使い方】
必要なデータファイルを全てダウンロード
無事FTPソフトとレンタルサーバーの接続ができたら必要なデータファイルをドラッグ&ドロップしてダウンロードします。
ダウンロード先はどこでも良いのですが、分かりやすいデスクトップなどで良いでしょう。
必要なデータはドメイン(Wordpress)を置いたディレクトリにあるデータ全てです。
例…「public_html」や「www」の中や、それらの次の階層にあるドメイン名などのフォルダの中など。
フォルダごとダウンロードしましょう。
クラウドやハードディスクにバックアップもとっておくと何か不具合が起きても復元できるのでしっかりとバックアップもとっておきましょう。
手順2:移行元のMySQLデータベースをエクスポート(バックアップ)する
サーバーのホームページからphpMyAdminへログインし、移行元(引っ越し元)の必要なMySQLデータベースをエクスポートします。
エックスサーバーの場合
サーバーパネルにログイン後、データベースのMySQL設定をクリック。
MySQLユーザ一覧でログインしたいユーザの名前をコピーします。右側の(sv〜.xserver.jp)の部分は必要ありません。
データベース名はMySQL一覧で確認できます。
どのユーザでログインすれば良いか分からない場合はこの後に行うデータベース情報の書き変えで開くファイル「wp-config.php」の書き変え前の2ユーザー名を選んで下さい。またパスワードは3のパスワードです。
サーバーパネルのトップに戻り、phpmyadmin(MySQL〜)をクリック。
先ほどコピーしたユーザの名前とパスワードを入力してログインをクリック。
mixhostの場合
cPanelを開き、データベースのphpMyAdminをクリック。
どのデータベースか分からない場合はこの後に行うデータベース情報の書き変えで開くファイル「wp-config.php」の書き変え前の1データベース名を確認して下さい。
ロリポップの場合
ユーザー専用ページにログインしてサーバーの管理・設定からデータベースをクリックして下さい。
ここでユーザー名とパスワードを確認したらphpMyAdminを開くをクリック。
先程確認したユーザー名とパスワードを入力して実行をクリック。
どのデータベース、ユーザーか分からない場合はこの後に行うデータベース情報の書き変えで開くファイル「wp-config.php」の書き変え前の2ユーザー名を選んで下さい。
さくらインターネットサーバーの場合
サーバコントロールパネルを開き、データベースの設定をクリック。
データベースユーザ名を確認し、管理ツールログインをクリックし、ユーザ名とパスワードを入力して実行をクリックして下さい。
どのデータベース、ユーザーか分からない場合はこの後に行うデータベース情報の書き変えで開くファイル「wp-config.php」の書き変え前の2ユーザー名を選んで下さい。またパスワードは3のパスワードです。
エクスポート(バックアップ)
無事にログイン出来るとこんな感じの画面になります。
画面左側のデータベースから移行するWordpressサイトのデータベース名を見つけてクリックしてから、エクスポートをクリックして下さい。
分からない方はこの後に行うデータベース情報の書き変えで開くファイル「wp-config.php」の書き変え前の1データベース名を確認して下さい。
エクスポートをクリックするとこんな感じの設定画面が表示されます。
詳細をクリックしてテーブルを全選択。
圧縮はzipでなくても大丈夫ですが、ここではzipを選択しました。
実行をクリックするとデータベースがエクスポート(バックアップ)されます。
手順3:移行元サーバーのドメインを削除し、移行先サーバーにドメインを設定する
移行元サーバーからドメインを削除し、移行先の新しいサーバーにドメインを設定します。
この段階で絶対に気をつけなければいけないのは、1.データファイルと2.データベースがダウンロード、エクスポート出来ているかです。
移行元サーバーからドメインを削除すると移行元サーバーのデータファイルとデータベースが削除されます!
ですので確実にダウンロード、エクスポートが出来ているか確認してから行って下さい。
でないと過去の僕のように絶望的な気分を味わうことになってしまいます。。。(その時は、有料でしたがエックスサーバーのバックアップ機能を使って事なきを得ました。)
当たり前ですが、自分で普段からバックアップをとっておけば最悪の事態は未然に防げますね( ・∇・)
WordPressの自動バックアップ機能【各サーバーで解説】
移行先の新しいサーバーにドメインを設定したら、独自ドメインのDNSサーバー(ネームサーバー)の設定も変更して下さい。
DNSサーバー(ネームサーバー)の変更は、変更してから反映されるまでに多少時間がかかります。(数時間から最大72時間程度)
手順4:データベース情報の書き変え
データファイルが全てダウンロード出来たら「wp-config.php」というファイルを見つけて下さい。
この中にデータベースとWordpressを接続するための情報が記述されています。
ダウンロードした状態ですと移行前の情報が記述されたままなので、新しい情報に書き変えます。
wp-configを見つけたらテキストエディットなどで開いて以下の記述を見つけて下さい。
Macなら「command+F」、Windowsなら「Ctrl+F」でdefine( 'DB_NAME'とページ内検索をかければ一発で出てくると思います。
1にデータベース名
2にユーザー名
3にパスワード
4にホスト名
をそれぞれ書き変えていきます。
書き変えていく新しい情報は各サーバーのコントロールパネル、サーバーパネルなどに記載されています。
各サーバーのphpMyAdminのログイン方法を見ていただければ1,データベース名と2.ユーザー名、3.パスワードは分かると思います。
4.のホスト名は、
・エックスサーバーの場合はサーバーパネルにログイン後、データベースのMySQL設定をクリック。画面右下の方に記載されています。
・mixhostの場合は「 localhost 」
・ロリポップの場合はユーザー専用ページにログインしサーバーの管理・設定からデータベースをクリックします。
以下のようにサーバーが4.のホスト名です。この画面で四つとも確認できますね。
・さくらインターネットサーバーの場合は、サーバコントロールパネルを開き、データベースの設定をクリック。
データベース サーバが4.のホスト名です。ロリポップと同じくこの画面で四つとも確認できますね。
手順5:移行先サーバーにデータファイルをアップロードする
移行先(引越し先)の新サーバーに手順1でダウンロードしたデータファイルをアップロードします。
まず移行先(引越し先)の新サーバーとFTPソフトを接続します。
アップロードしたい場所へ、手順1でダウンロードしたデータファイルをドラッグ&ドロップしてアップロードすれば完了です。フォルダごとアップロードして下さい。
(場所は各サーバーや設定にもよりますが、「public_html」や「www」フォルダなど。)
FTPソフトとサーバーを接続する方法【CyberduckとFileZillaの使い方】
手順6:移行先サーバーにMySQLデータベースをインポートする
移行先(引越し先)の新サーバーに手順2でエクスポート(バックアップ)したデータベースをインポート(取り込み)します。
まず新しいサーバーのphpMyAdminへログインし、インポートするデータベースを画面左側から探してクリックします。
使用するドメインのデータベースをまだ作成していない場合は、各サーバーのデータベースの作り方を参考に作成しておいて下さい。
WordPressのデータベースの作り方【各サーバーで解説】
次にインポートをクリック。
インポートをクリックするとこんな感じの設定画面が表示されます。
ファイルを選択をクリックし、先程エクスポートしたファイル選択。
次に実行をクリックしてインポート完了です。
以上でWordpressのサーバー移行(お引越し)完了です!
404エラーなどが出てサイトが表示されない場合
404エラーなどが出てサイトが表示されない場合は、「.htaccess」がアップロードされているか確認して下さい。
パーマリンクを再設定する事でエラーが直る場合もあります。
WordPressの管理画面から、設定→「パーマリンク設定」をクリック。
「変更を保存」をクリックして再設定完了です。
お疲れ様でした。