• HOME
  • >
  • Web Design
  • >
  • WordPressの本番環境をローカル環境で再現する方法

WordPressの本番環境をローカル環境で再現する方法

WordPress内のファイルを修正する際、本番環境のファイルをそのまま編集するのはリスクがあります。

誤った修正でサイトが表示されなくなる危険もあるため、ファイルを修正する際はローカルに作ったテスト環境内で修正した方が安全です。
Windows環境ではローカルサーバーにXAMPPを利用すると便利です。Mac環境ではMAMPがよく使われますね。

XAMPPのインストールの仕方とXAMPP内にWordPressのインストールする方法は以下で紹介しています。

ローカルサーバーをXAMPPで構築してWordPressをインストールする方法

スポンサーリンク

本番環境のWordPressの状態をローカル環境(XAMPP、MAMP)で再現

本番サーバ内のWordPressの状態をローカル環境で再現する方法を解説します。
XAMPPでの作業を想定して解説しますが、Macでよく使われるMAMPPでも作業の流れは同じです。

MAMPでの作業で注意すべき箇所は別途解説していますので、MAMPを利用する人も参考になると思います。

また、バーチャルホストを利用して複数のWordPressのプロジェクトを管理するものと想定して解説します。

WordPressのデータをバックアップする。

WordPressのデータをバックアップするには、「ファイル」と「データ」の2種類をバックアップする必要があります。

ファイル 本番サーバーにアップロードされたphpファイルやCSSファイルなど。
データ データベースに格納された記事データなど。

ファイルのバックアップ

FFFTPやFileZilla、WinSCPなどを利用して、WordPressの入ったデータをフォルダごとまるっとローカル環境にコピーします。

WordPressのデータは大量にあるため、ダウンロードに時間がかかります。

大量のファイルを転送中、接続が切れてダウンロードがうまくいかない場合は、FTPではなくSFTPを利用してダウンロードするとよいです。

SFTPで大量のデータをダウンロードする方法はこちら。

FTPで大量のファイルのダウンロード/アップロードに失敗するときはSFTPを使ってみる

データベースのバックアップ

WordPressでは「MySQL」というデータベースを使用しています。

phpMyAdminを使用してMySQLに格納されているデータをバックアップするのですが、今回はロリポップの環境をローカルに実現するものとします。

他のレンタルサーバーもそれほど違いはないと思います。

ロリポップにログインし、メニューにあるWEBツールのデータベースをクリックします。

遷移先のページで「サーバー」「データベース名」「ユーザー名」「パスワード」をメモしておき「phpMyAdminを開く」をクリックします。

遷移先のphpMyAdminの入り口ページで前画面でメモしておいた「ユーザー名」「パスワード」「サーバー」を入力・選択して実行ボタンを押します。

バックアップ対象のデータベースを選びます。

データベース内に入ったらエクスポートを押します。

「詳細」のラジオボタンを選択し、「テーブル:」で全選択します。

生成オプションの「追加コマンド:」内にある「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT コマンドの追加」チェックボックスをチェックします。

その他はデフォルトのままで「実行する」ボタンを押します。

「データベース名.sql」というMySQLサーバーのデータが保存されました。

バックアップした本番サイトのwordpressフォルダをローカル環境にコピー

バックアップしたwordPressフォルダをローカルにコピーします。

コピーの場所はhtdocs以下にフォルダごと入れます。
今回は複数のサイトを管理するという想定で、バーチャルホストで管理したいと思います。

バーチャルホストとは1台のWebサーバーで複数のドメイン名のサイトを管理することです。バーチャルホストを利用すれば、複数のサイトを運用する際、1台のWebサーバーで運用できます。

このバーチャルホストをローカル環境でも実現できます。

Windows上でXAMPPを使用してローカルにバーチャルホストを設定する方法

Mac上でMAMPを使用してローカルにバーチャルホストを設定する方法

管理しやすいようにプロジェクトごとにフォルダ分けして管理します。

htdocs内にwordpressフォルダを作成し、その中にwordpressのデータが入ったフォルダを入れます。フォルダ名はbasic_designとしました。

下記のディレクトリになります。

としました。

そして以下のURLでアクセスできるようにします。

設定の仕方は下記で解説しています。

Windows上でXAMPPを使用してローカルにバーチャルホストを設定する方法

Mac上でMAMPを使用してローカルにバーチャルホストを設定する方法

phpMyAdminからデータベースを作成

XAMPPからApache、MySQLを起動してURL欄にlocalhostと入力すると、下記画面にアクセスできます。
右上の「phpMyAdmin」をクリックして、phpMyAdminにログインします。

任意の名前でデータベースを作成

phpMyAdminにログインしたら、任意の名前でデータベースを作成します。

ページ上部の「データベース」タブをクリックして、データベース名を入力し、照会順序を「utf8_general_ci」に指定後、作成ボタンをクリックしてデータベースを作成します。

sqlファイルをデータベースへインポート

バックアップしたsqlファイルをローカル環境に作成したデータベースへインポートします。

「ファイルを選択」ボタンをクリックして、バックアップしたsqlファイルを選択します。
変更箇所を以下の通りにして実行ボタンをクリックします。

  • ファイルの文字セット:utf-8
  • フォーマット:SQL

「インポートは正常に終了しました。」と表示されれば完了です。

エラーが出た場合

「インポートするデータを受信できませんでした。ファイル名が送信されていないか、ファイルサイズが PHP の設定で許可された最大値を超えています。」と表示された場合はインポートできるファイルサイズを増やす必要があります。

内のphp.iniファイルを修正します。

アップロードできるファイルサイズと、POSTで送信できるデータサイズを増やします。今回は50Mにしました。

920行目辺り

770行目辺り

XAMPPを再起動後、再度インポートをします。

wp-config.phpを編集

内のwp-config.phpをローカル環境に合わせて修正します。

※本番サーバー用のwp-config.phpは名称を変更するなどして残しておくこと。
本番サーバーにローカル環境の為に修正したwp-config.phpを上書きするとサイトが表示されなくなりますので注意。

■WordPress のためのデータベース名
上記で任意の名前で作成したデータベース名を記述します。
■MySQL データベースのユーザー名
root
■MySQL データベースのパスワード
任意で付けたパスワードを記述します。パスワードを設定していない場合は空にしておきます。
■MySQL のホスト名
localhost

ベータベース内のドメイン名をローカル環境に変更

XAMPPにインストールしたsqlファイルの中見は、本番サーバーのドメインになっているので、ローカル環境のドメインに変更する必要があります。

DATABASE SEARCH AND REPLACE SCRIPT IN PHPを使用します。
下記からダウンロードして解凍後、wordpressフォルダに入れます。

DATABASE SEARCH AND REPLACE SCRIPT IN PHP

今回は「http://basicdesign/」でバーチャルホストの設定を想定しているので、下記のURLでアクセスします。

バーチャルホストの設定をしていない場合は下記の様なURLになります。

下記の画面にアクセス後、「search/replace」に置換前、置換後のURLを記述します。

  • replace:置換前のURL(本番環境のURL)
  • with:置換後のURL(ローカル環境のURL)

※置換前のsqlファイルはバックアップを取っておいた方が良いでしょう。
※データベースの情報によっては、「replace」に入れるURLの最後の/は取った方が上手く置換が行くかもしれません。
※MAMPPでポート番号によるバーチャルホストで管理する場合、「with」に入るURLの最後の/は取った方がうまくいきます。

上記入力後、「dry run」をクリックして置換テストを行い、問題がないようでしたら「live run」で置換を実行します。

ブラウザのURL欄に置換したURLを入力してチェックして問題がなければ完了です。

作業が完了したら、第三者にURLを書き変えられないように「delete me」ボタンをクリックして、フォルダごと削除しておきましょう。

トップページ以外「Internal Server Error」が表示される場合

wordpressファイル内の.htaccessファイルを編集します。

上記の「RewriteBase」と8行目の「RewriteRule」の二カ所をローカル環境に合わせて修正します。

例えば、バーチャルホストではなくデフォルトの設定でhtdocs内にbasicdesignというフォルダでデータを管理した場合。
「http://localhost/basic_design/」

以上で解決できると思います。

スポンサーリンク

Related Posts

Leave a Reply

メールアドレスが公開されることはありません。

This blog is kept spam free by WP-SpamFree.