サーバで管理していたWordPressをローカル環境に移行する方法


投稿日:2012年1月29日
  • 26
  • 35



今回はサーバにアップロードされているWordPressを、ローカル環境に移行する方法を解説します

XPMPPをインストール済みで、サーバのワードプレスファイルと、データベースをバックアップ済みという前提で解説を始めます。
XPMPPをインストールしてない方は「ローカル環境にXAMPPでサーバを構築して、WordPressをインストールする方法」を参照してください。
またWordPressのバックアップ方法は「WordPressのバックアップ方法を解説」を参照してください。


データベースの作成・インポート

1.XPMPPの設定画面でphpMyAdminをクリック、ユーザー名、パスワードを入力しphpMyAdminにログインします。

 
2.上に並んだメニューから「データベース」をクリック。

 
3.新規データベースを作成する」の欄に名前を入力して「作成」をクリック。今回は仮に「localWordPress」という名前にしました。

 
4.左のデータベース一覧に、作成したデータベースが表示されているので、クリック。「localWordPress」を選んだ状態でメニューから「インポート」をクリックします。

 
5.アップロードファイル:」をクリックして、サーバからバックアップしたデータベースファイルを選択します。「ファイルの文字セット:」で「utf-8」になっていることを確認したら「実行する」ボタンをクリック。
zipやgzで圧縮されたファイルをアップロードしてください。8MB以上のファイルをアップロードしようとするとエラーが出るので注意してください。

インポートは正常終了しました。」と出れば完了です。
 
6.ローカル環境に合わせてURLを調整します。左にあるテーブルで「wp1_options」を選択。
option_name」フィールドの値が「siteurl」となっているレコードを編集します。

 
7.option_value」を「http://localhost/xampp/◯◯(WordPressのフォルダ名)」に変更。

 
8.同じように次のページにある「home」レコードの「option_value」も「http://localhost/xampp/◯◯(WordPressのフォルダ名)」に変更します。

以上でデータベースの設定は完了です。
 

追記(ドメインの置換)

プラグインによってはこの設定では動作しない場合があります。バックアップしたデータベースを解凍して、UTF-8のBOMなしで保存できるテキストエディタで開き、実際に運用していたURL「http://example.com(例)」を「http://localhost/xampp/◯◯(WordPressのフォルダ名)」へと置換すると正常に動作することがあります。

追記(アップロードできる最大サイズについて)

アップロードできるデータベースのサイズは最大で8MBに設定されています。変更するには「C:\xampp\php」にある「php.ini」を編集します。

772行目あたり「post_max_size」を「100M」に変更

; post_max_size = 8M
post_max_size = 100M

935行目あたり「upload_max_filesize」を「100M」に変更

; upload_max_filesize = 2M
upload_max_filesize = 100M

変更が終了したら「C:\xampp\xampp-control.exe」を利用して、Apacheを再起動して、設定を反映させます。(パソコンを再起動しても反映されます)


WordPressファイルの設置・設定

1.FTPなどでサーバにあるフォルダを丸ごとダウンロードしたら、「C:/xampp/htdocs/xampp/」へフォルダを移動します。
 
2.フォルダの中にある「wp-config.php」を開いてください。22行目あたり

// ** MySQL 設定 - こちらの情報はホスティング先から入手してください。 ** //
/** WordPress のデータベース名 */
define('DB_NAME', 'localWordPress'); //今回は「localWordPress」というデータベースを作成しました。

/** MySQL のユーザー名 */
define('DB_USER', 'root'); //MySQLにログインするときの名前です。

/** MySQL のパスワード */
define('DB_PASSWORD', '◯◯'); //MySQLにログインするときのパスワードです。

/** MySQL のホスト名 (ほとんどの場合変更する必要はありません。) */
define('DB_HOST', 'localhost'); //ローカルの場合は「localhost」と入力します。

この設定を環境に合わせて調整します。最後ホスト名を「localhost」に設定するのを忘れないようにしてください。

一点だけ注意点があります。ファイルを編集してサーバにアップロードする場合、ローカル環境用に設定した「wp-config.php」も一緒にアップロードすると、サーバ側でデータベース接続エラーになります。事故を防ぐためにサーバに元々あったオリジナルフィルを「wp-config_original.php」などと改名して同じフォルダに取っておきましょう。
 
3.http://localhost/xampp/(ワードプレスのフォルダ名)/」にアクセスします。ローカル環境でワードプレスが動作していると思います。


以上でサーバ側のワードプレスをローカル環境で動作させる方法は終了です。
ローカル環境にXAMPPでサーバを構築して、WordPressをインストールする方法」と合わせて読んでいただければ、ローカル環境でしっかりとテストをしながらワードプレスが管理できるようになると思います。
事故のないサイト管理に役立てていただけたら幸いです。



現在のページを共有する



現在のページに関連する記事


おすすめの記事


いただいたコメントなど

  1. ピンバック: webサーバーからロ-カル環境への移行まとめ | Futurismo

  2. tintirorin のコメント:

    こんにちは。
    わかりやすくて大変助かりました。^^

    • Oxy のコメント:

      はじめまして、コメントありがとうございます。
      お役に立てて何よりです。

  3. gwenith のコメント:

    同じ手順で行ったのですが、以下のメッセージが表示されてしまいました。
    解決方法を教えて頂けますでしょうか?
    Access forbidden!

    要求されたディレクトリへのアクセス権限がありません。 インデックスドキュメントが存在しないか、 ディレクトリの読み込みが許可されていません。

    サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。
    Error 403
    localhost
    Apache/2.4.2 (Win32) OpenSSL/1.0.1c PHP/5.4.4

    • oxy のコメント:

      ローカルホストで403エラーということは「.htaccess」の設定が間違っている可能性が高いと思います。こちらのページを参照してみてください。

      または、エラーメッセージにあるように、単純にインデックスファイルが指定されたディレクトリにないことが考えられます。MySQLのデータベースファイルだけでなく、HTTPファイルもダウンロードしていることを確認して下さい。ダウンロードはさまざま方法がありますが、こちらのページの方法が手間無しです。

  4. ピンバック: WordPress をローカル環境コピーする | あんとんさんち

  5. ピンバック: XAMPPでWordPressの既存サイトをローカル開発環境に構築する方法 | 黒猫さんぽみち

  6. keita のコメント:

    とても参考になりました。ありがとうございます。

    上記のようにインストールしたファイルを
    逆に、ローカルからサーバーにアップロードする場合も
    これと同じ方法でいいですか?

    wp-config.php以外を選択して
    アップロードするだけでいいんでしょうか?

    疑問に思ったので質問させていただきました。

    • oxy のコメント:

      keitaさん
      コメントありがとうございます。

      同じようにアドレスをローカルのものからサーバのアドレスへ変更し、データベースとファイルをアップロードすれば動作するはずです。

      しかし変更を加えるごとにデータベースとファイルを全てコピーするのでは、わざわざCMSを利用している意味が無くなってしまいます。
      個人的にはWordPressの完全なデータ移行は、サーバのデータをローカルに移す際や、ドメインの変更時に別のサーバへ移行する際など、限定したほうが良いと思います。

      ローカルで何か変更した場合は、変更点だけサーバにアップロードする方法が現実的だと思います。

コメントを残す

コメントは認証制のため、すぐには反映されません。

プログラミングに関する質問は「日本語でプログラミングの悩みを解決するQ&Aサイト sukegra」をご利用ください。