既に公開しているWPサイトの不具合をローカルで検証してみる

既に公開しているWPサイトの不具合をローカルで検証してみる
Share on FacebookTweet about this on TwitterShare on Google+Pin on PinterestEmail this to someone

ウェブサイトの更新作業をしていると不具合がでてきたりするもので…。

「あれ…最近プラグイン足したっけ?」
「テーマファイルは最近触ってなかった気がするけど」
「ん、何かアップデートしたっけ?」
「っていうか、いつからこの状態になってた?!」

もはやわからない・・・

そんなときは、

WordPressで作ったサイトの調子が悪い時にまず試すこと達

  • プラグインを全て無効にしてみたり・・・
    無効後に症状が改善したら、1個ずつプラグインを有効化していって、どのプラグインが原因か探る
  • テーマを変更してみたり・・・
    デフォルトテーマ等なんでもいいので変更。変更後に症状が改善されれば、利用中のテーマに原因がある
  • functions.phpのファイル名一時的に変えてみたり・・・
    もちろんfunctions.phpに限らない。
    上記のプラグインの検証の際にも、怪しいプラグインの格納されたフォルダ名を変更してみたりする

をします。

時間が無くってチャッチャと直したいときや、大体の目安がついている場合(あのプラグインかな?とか)は
問答無用でそのまま修復作業をしますが、

プラグインを一瞬だけ全て無効にしたくらいじゃサッパリ症状が改善されなかったりした場合は、
落ち着いてローカルで検証したいものです。(というかそうするべきです)

というわけで、ものすごくザックリですが
チャチャッとローカル環境で検証する流れをご紹介します。

私のやり方・・・なので、検証法の一つとして念頭に置いていただければと思います。

    現状のWordPressサイトのバックアップをとる

    Duplicator というプラグインを使って、現状のサイトの内容をローカルへコピーする準備をします。

    こちらのプラグインですが、
    WordPressがインストールされた階層以下を全て(データベースの内容も!)、まるっとパッケージ化してくれるので大変便利です。

    この度はローカルでの検証として使用しますが、
    サイトの引っ越しや、バックアップとしても気軽にパッケージ化できて良いです。

    Duplicatorのインストール・有効化

    プラグインの「新規追加」で「Duplicator」を検索。
    下の画像のプラグインをインストール、有効化します。

    Duplicatorの設定〜パッケージのダウンロード

    有効化されたら、WordPress左サイドナビに追加表示された「Dupliator」をクリックして以下の画面を表示。
    「画面右上の「Create New」をクリックします。

    すると、下のような画面が出るはずなのですが、

    もし画面上部に「Requirements: Fail」と出たら、内容を確認します。

    ※おそらく大抵の場合は、「Permissions」が「Fail」と出ていると思うのですが・・・

    この場合、WordPressをインストールしている階層などのパーミッション(管理者権限)が厳しい状態(セキュリティ対策としては良い)となっており、Duplicatorがアクセスできない状態であることを示しているので、
    サーバー上のパーミッションを(あくまで一時的に)777 / 誰でも変更できるよ〜 にしてあげてください。

    ※この後パッケージをダウンロードした後に、必ず元の状態に戻してください!容易に乗っ取られたりします。

    無事エラー画面が出なければ、「Name:」に任意の文字を入力します。デフォルトで入っているものをそのまま使用しても良いですし、こちらはパッケージのzipファイル名に使用されますので、自分でわかりやすいものに変更しても良いです。
    (ただし、 -(ハイフン)は使用不可なので、使いたい場合は _(アンダーバー)を使いましょう)

    「Name:」の下の方にある「Archive」パネルを開くと、上のような画面が出るので、
    個人的には不要だと思われる「Cache」フォルダを、除外(パッケージ外)に設定しておきます。

    不要と思われるフォルダやファイルを任意で設定できます。

    上の画面の②と同様で「wp-upload」をクリックすると、自動で下の行に /uploads/ フォルダが除外対象として追加されます。
    後ほどの手順で「Build」クリック時にタイムアウトエラーが出るときなんかはここで /uploads/ フォルダを除外して試してみましょう。

    タブの「Database」も同様で、わたしはこちらは基本触りませんが、不要なデータがあればチェックを入れて外しておきます。

    不要なフォルダ等の記入が終わったら、「Next」でスキャンが開始されます。

    スキャンが終わると上の画面が出ます。
    「Setup」や「WordPress」等でバージョンエラー等でることがありますが、「Buid」クリックで大体次へ進むことができます。

    Size Checksでエラー = あまりにも大きなデータ容量だと、Buildしている最中にタイムアウトエラーが発生したりするので、(発生しないこともあります)そういった場合は「Back」で戻り、

    /uploads/フォルダもパッケージ外に指定。
    /uploads/フォルダは手動でFTPクライアント等でDL。最後に入れ込む形となります。

    「Build」を押すと下の画面が出てきて・・・

    Complete!

    というわけで、出てきた二つのボタンをそれぞれクリックしてダウンロードします。

    【installer】と【zipファイル】をセットでどこかに保管しておきます。
    ちなみにバックアップの用途でDuplicatorを使用した場合はこれらのファイルで復帰することができます。

    もし・・・
    ※先ほど「パーミッション」を777に変更していた場合は、この時点で元に戻しておきましょう!
    ※先ほど size checkがひっかかって /uploads/ フォルダを除外していた場合は、この時点でFTPクライアント等使用・手動で /uploads/フォルダをまるっとダウンロードしておきましょう!

    ローカルサーバー・DB(データベース)の準備

    こちらについては、先日当ブログに記載した、
    MAMPを使用したローカルでのWordPressインストール
    をご覧ください。

    ※記事内の「4. データベースの作成」までです。
    DuplicatorはWPも含めてパッケージしてくれているので、WordPressのダウンロード〜はこの度では不要です。

    ローカルサーバーに先ほどのデータを展開する。

    ローカルサーバー・DBの準備ができたら、
    ローカルサーバー上に先ほどの2つのファイルを入れちゃいます。

    ※特に設定を変更していなければ、
    「アプリケーションフォルダ」→「MAMP」→「htdocs」の中が、サーバー上でのroot直下にあたります。

    続いて、入れ込んだ【installer.php】をブラウザで開きます。
    http://localhost/installer.php
    (上記ローカルサーバー設定時のポート設定によっては http://localhost:8888/installer.php となります。)

    上記画面が出たら、チェックボックスにチェックを入れて「Next」

    続いてデータベースの情報入力画面になるので、各項目を入力後「Test Database」をクリック!

    • Action:もしこちらが「Create New」となっていれば、「Connect and Remove All Data」にしておきます。
    • Host:localhost
    • Database:DB作成時に設定したデータベース名を入力します。phpMyAdminの[Database]を開いて確認しましょう。
    • User:DB作成時に特に設定していなければ、デフォルトでは「root」となります。
    • Password:DB作成時に特に設定していなければ、デフォルトでは「root」となります。

    Host Databse共にSuccess!と出ればOK!「Nest」をクリックします。
    このあと何か質問みたいのが出るかもしれませんが「OK」で大丈夫です。

    「Next」をクリック!

    「Admin Login」をクリックして、WordPressのログイン画面へ遷移します。

    Duplicatorのバージョンによっては「Seculity Cleanup」というボタンも出ているかもしれません。
    その場合はそちらをクリックしてください。

    ログイン後、上のような画面が出てくるので「Remove installation Files Now!」をクリックして
    不要となったデータを削除しましょう。(zipファイルなどが残っているとアタックされる危険性が高まるので必ず削除します。)

    もし上記画面でクリックしそびれたら、localhost上の先ほどファイルを入れ込んだ階層から手動で削除しておきます。
    (zipファイルが自動で解凍されています。)
    【installer.php】【〜〜.zip】は必ず削除!
    /uploads/フォルダをパッケージ化の際に除外していた場合は
    手動でダウンロードした「uploads」フォルダデータを、やはり手動で該当の場所へ入れてあげましょう。

    あとは煮るなり焼くなり検証しましょう。

    心ゆくまで検証しましょう。

    もしどんどん悪い方向へ進んでしまい、もう一度ローカルホストに先ほどのデータを入れ込んで戻したい場合は、入れ込んだデータ(解凍されたデータも全て)を容赦なく全削除!(通常であれば htdocs直下の部分です)

    そしたらまた3 ローカルサーバーに先ほどのデータを展開する。からやり直してください。

    検証が完了・ネット上へアップロード

    検証・補修が無事完了したら、ネット上へアップロードします。

    手順は、これまでの説明とほぼ同じです。

    1. Duplicatorで、検証後の正常なパッケージを作成・保管
    2. 本番サーバーのWordPressがインストールされている階層へパッケージ類をアップロード。
    3. ローカルの時と同様installer.phpを開く(例:https://www.gon-chan.net/installer.php)
    4. 先ほどと同じDuplicatorでの、DB情報などの入力画面に沿って入力します。
      (万が一DB情報などがよくわからない場合は、契約されているサーバー会社で説明があったりします。)
    5. 同じく続いてWordPressへログイン時に必ず不要データ(installer.phpや〜.zipなど)を削除して完了〜!