WordPressサイトを運営していると、サイトに大きな変更を行う場面があります。
サイトが壊れるリスクを避ける為にも、
ローカルでテスト環境を用意して、作業のテストを行う事が必要になります。
この記事では、ローカルにテスト環境を構築し、本番サイトのクローンを作成する方法を説明していきます。
LOCAL by Flywheelを使ってWordPressサイトのクローンをローカル環境に構築する方法
大きく分類すると以下の3つの手順を行います。
- ① コピー元サイトのバックアップデータを取得
- ② ローカル環境を構築してバックアップデータをインポート
- ③ データベースの内部リンクをローカル環境に書き換える
順番に説明していきます。
① BackWPupでコピー元サイトのバックアップデータを取得しておく
WordPressサイトのバックアップを取る方法は色々ありますが、
BackWPupというプラグインを使う方法が最も簡単なので、これを使っていきます。
以下の記事に、BackWPupでバックアップを取る手順を書いています。
記事を参考にして「手動バックアップ」を行い、バックアップデータをダウンロードしてください。
ダウンロードしたデータが以下です。
Zipファイルを解凍しておいてください。
バックアップで取得したデータは以下の2つに分類されます。
- ファイル類・・・画像、動画、プラグイン、WordPressのコード類
- データベース・・・記事のテキストデータ
以下が解凍した中身ですが、
「~.sql」という拡張子のものが「データベース」のファイルになります。
② LOCAL by Flywheelでローカル環境を作ってバックアップデータをインポート
次は、WordPressのローカル環境を構築していきます。
最も簡単かつサイトの表示スピードが速い「LOCAL by Flywheel」というアプリを使用して作成します。
まだ使ったことがない方は、以下の記事を参考にして使い方を習得しておいてください。
説明を分かりやすくする為に「copy」という名前でサイトを作成します。
ドメインは「copy.local」です。
サイトは必ず「Custom」で作成してください。
PHPのバージョン、Webサーバー、MySQLのバージョンは、
コピー元のサイトと合わせてください。
PHPのバージョンや、サーバーの種類がコピー元と違うと
最後の段階でエラーが出てしまいます。
適当に入力せずに、コピー元と合わせておきましょう。
ユーザー名とパスワードは適当に入力しておいてください。
- admin
- pass
でも結構です。
コピー元に合わせてSSL化しておく
コピー元のサイトがSSL化している場合は、ローカル環境も合わせます。
「SSL」をクリック →「TRUST」をクリックしてください。
右上の「STOP SITE■」→「START SITE▶」をクリックして再起動させるとSSLが反映されます。
コピー元のデータベースに入れ替え
ローカル環境のデータベースを削除して、
コピー元のデータベースをインポートしていきます。
「DATABASE」→「ADMINER」をクリックしてください。
ローカル環境のデータベースが開きます。
- ①全てのテーブルにチェックを入れて
- ②「Drop」をクリックしてください
これで既存のテーブルが全て削除されます。
- ③「Import」をクリックしてください。
「ファイル選択」をクリック
解凍したコピー元のバックアップデータから、「~.sql」ファイルを選択して開きます。
「Execute」をクリック
これでインポート完了!!。
と言いたいところですが、以下のエラーが出た方がおられるかと思います。
次は、エラーの対処方法を説明していきます。
Fatal error が出た場合の対処
【エラーの内容】
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 101391912 bytes) in /etc/scripts/local-adminer.php on line 92
簡単に説明すると、「メモリーが足りません」という事なので、
使えるメモリーを増やしていきたいと思います。
下記画像の「右向き矢印マーク」をクリックしてください。
ローカル環境のファイル領域が表示されます。
「copy」→「conf」→「php」→「7.2.0」とディレクトリ階層を辿っていくと
「php.ini」というファイルがあるはずです。
「conf」フォルダが見つからない方は、「Preferred」でサイトを作ってしまっています。
「Custom」でサイトを作り直してください。
「php.ini」をエディターで開いてください。
22行目あたりに「memory_limit」の項目があります。
256Mを、1000Mに書き換えて上書き保存してください。
これで使えるメモリーが増えました。
設定を反映させる為に、右上の「STOP SITE■」→「START SITE▶」をクリックして再起動してください。
再度データベースを開いて、「~.sql」ファイルをインポートしていきます。
「ファイル選択」でSQLファイルを読み込んで、「Execute」をクリック。
下記の表示が確認できれば、インポート完了です。
コピー元のファイルに入れ替え
データベースの次は、「画像」や「プラグイン」などのファイルを入れ替えていきます。
下記画像の「右向き矢印」をクリックして、ローカル環境のファイル領域を開きます。
「copy」→「app」→「public」とディレクトリ階層を辿っていくと
WordPressのファイルデータが入っています。
これを全部選択して削除してください。
コピー元のバックアップデータを全選択してコピー(「~.sql」ファイル以外)
ローカル環境の「public」にペーストしてください。
データベースの情報を書き換える
「public」フォルダにペーストしたファイルを確認してください。
「wp-config.php」というファイルを編集していきます。
「wp-config.php」をエディターで開いて、
23行目あたりにあるデータベース情報を書き換えていきます。
- DB_NAME → local
- DB_USER → root
- DB_PASSWORD → root
- DB_HOST → localhost
これでコピー元の「ファイル」と「データベース」を反映させる事ができました。
設定を反映させる為に、右上の「STOP SITE■」→「START SITE▶」をクリックして再起動してください。
③ データベースの内部リンクを書き換える
データベースには、コピー元のサイトに書いた記事がそのまま入っています。
つまり、「記事の内部リンクはコピー元のドメインがそのまま入っている」という事です。
これをローカル環境のドメインに書き換えていきます。
「Serch Replace DB」というツールを使って書き換えます。
ツールをダウンロードする為に、まず公式サイトにアクセスしてください。
- 3つの項目にチェックを入れて、
- 名前とメールアドレスを入力
「SUBMIT」ボタンをクリックすると、入力したメールアドレスに通知が来ます。
メールを開いて、
「here」のリンクをクリックすると、ツールのダウンロードが始まります。
ダウンロードしたツールが以下です。
解凍しておいてください。
解凍したフォルダの中身をコピーして、
先ほどの「public」フォルダ内にペーストしてください。
ブラウザで
https://【ローカル環境のドメイン】/Search-Replace-DB-master/
にアクセスします。
つまり、この記事の例では以下のアドレスにアクセスしてください。
https://copy.local/Search-Replace-DB-master/
Search Replace DB の管理画面が表示されます。
以下の入力
- 「replace」 → コピー元のURL
- 「with」 → ローカル環境のURL
以下はデフォルトのままでOK
- ①「dry run」をクリックすると、データを書き換えるテーブルを表示します。
- ②「live run」をクリックすると、実際にデータの書き換えが始まります。
- ③「delete me」をクリックすると、Search Replace DB をpublicフォルダから削除
順番に行ってください。
設定を反映させる為に、右上の「STOP SITE■」→「START SITE▶」をクリックして再起動してください。
「VIEW SITE」をクリックすると、ローカル環境に作成したサイトが表示されます。
以上になります。お疲れさまでした。
スポンサーリンク |
|
|
|