手軽にWordPressの開発環境をローカルPC上に構築できる「Local(旧:Local by Flywheel)」は使用している人も多いのではないかと思います。
ですが、使用している際に異様に動作が遅くて重たくて、作業にならん!って時……ありません?
わたしはその状態に陥って非常にストレスだったため、対処法について調べてみましたので備忘録として残しておきます。
WordPress開発環境「Local」とは
WordPress開発環境「Local」とは、インストールするだけで自分のパソコン上にWordPress環境を構築することの出来るツールです。
WordPressは、実際のところWebサーバ+データベースサーバを必要としており、それらを自分のパソコン上で実現するにはXAMPPなどを用いてサーバを構築し、データベースを自分で作成して……といった作業が必要になります。
それらを一括して行なえるのが、WordPress開発環境「Local」になります。
PHPやデータベースのバージョンを切り替えてWordPress環境を作成したり、複数のサイトを構築したりが簡単に出来るので、非常に重宝します。
「Local」の処理が異常に遅くなる問題の対処法
便利に使用できるツールの「Local」ですが、処理が異常に遅くなることがあります。
ひどいときにはWordPressのスタートに数分かかったり、リロードが完了するまで数十秒待たなければならないこともありました。わざわざローカルに環境を作成しているのに、処理の遅さに辟易したりもします。
その場合の対処法をまとめました。
【Windows限定】localhost指定をIPアドレスに変更する
Windows限定ではありますが、wp-config.phpの設定を変更すれば改善されるようです。
わたしはWindowsユーザーですので、こちらを試してみたところ状況は改善されました。
リンク先に詳細がありますが、wp-config.phpを開き、
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
こちらの記述を以下に変更します。
/** MySQL hostname */
define( 'DB_HOST', '127.0.0.1' );
フォーラムの記事を読むと、Windowsの場合はlocalhostだろうと一旦hostsファイルでの名前解決を行なうのですが、そこで余計な時間を食っているようです。
よくよくhostsファイルを確認すると、WordPressサイトを作成した時点でLocal自体はhostsファイルに変更を行なっているようですが。
::1 argus-blog.local #Local Site
127.0.0.1 argus-blog.local #Local Site
そのあたりの諸問題を解消するために、とりあえずローカル参照先をIP指定にサクッと変えてしまうという方法ですね。Windows環境でLocalの動作が遅い場合には、試してみても良いかと。
【特定のサイトのみ遅い場合】データベース最適化
localhost指定を変更しても状況が改善されないサイトが、ひとつだけ残りました。
この場合、データベースのオーバーヘッドが増えすぎている可能性もあります。記事が多いサイトなどは、そういった可能性もありますので、データベースの最適化を試してみると改善されるかもしれません。
WordPressサイトをスタートした状態で[Database]のタブを選択すると[Open Adminer]がクリック可能になります。
サイトがスタートしていない状態だと、グレーにリンクアウトしています。
クリックするとデータベースの管理画面がブラウザで開きますので、一番上にチェックを入れて全てを選択し、最下部にある最適化をクリックして最適化を実行します。
わたしの環境では、こちらで改善されました。
但し、この場合は本番環境でも同様の事象が発生していると思われるため、本番環境でも同様にバックアップの確認と最適化の作業を実施しました。
まとめ
WordPress開発環境「Local」の動作が異常に遅い場合の対処法について、備忘録としてまとめました。
- Windowsの場合は、wp-config.phpのlocalhost指定をIPアドレスに変更する。
- データベースのオーバーヘッドが増えている可能性があるので、最適化を実施する。