WordPressを高速化しようと思い立ち、ネットにて便利プラグインを調べてみた。WordPress 高速化 のサイトは数多く、役立つ情報もたくさんある。「キャッシュ系のプラグインを入れれば、それなりに早くなるだろう・・・」と考えたのがそもそもの間違いだった!!今回は高速化でドツボにハマり、死ぬ思いで5時間浪費した経験を元にお話ししたいと思います。
どんなプラグインを入れたのか?
ネットで情報を集めていて、一番多かったのはやはり簡単に高速化できるキャッシュプラグインのサイトでした。キャッシュプラグインはかなり沢山ありますが、その中でもっとも多く紹介されていたのは以下の7つのプラグインです。
- (追加)001 Prime Strategy Translate Accelerator・・・翻訳ファイル等をキャッシュさせることで高速化するプラグイン
- (追加)DB Cache Reloaded Fix・・・利用するクエリ数を減らすことでデータベースの負荷を軽減できる高速化プラグイン
- (追加)MO Cache・・・負荷のかかる翻訳読込みをキャッシュを利用し高速化するプラグイン
- (追加)WP Super Cache・・・Webサイトのページをキャッシングして表示を高速化するプラグイン
- (追加)WP File Cache・・・変数などのオブジェクトをキャッシュし、データベースのクエリ数を減らすプラグイン
- (導入済)WP Hyper Response・・・データを並列で処理し、体感速度を向上させることが出来る高速化のプラグイン
- (導入済)Quick Cache・・・キャッシュを利用することでサイトの表示速度を高速化させるプラグイン
※参考サイト:ITTI labo 様
「追加」としているのは、今回導入したプラグイン。「導入済」となっているのは、高速化を試す前に既に導入していたプラグインです。すでに「WP Hyper Response」と「Quick Cache」は導入していましたが、特別トラブルになるような現象はありませんでした。そして、「追加」のプラグインを上から順番にインストールすると・・・500エラー(Internal Server Error)が発生。
とにかくプラグインを停止させようと、WordPressの管理画面にアクセスするも、500エラーで表示されず。さらに焦る。次に、FFFTPからインストールしたプラグインを軒並み削除してみた。しかし、500エラーは改善せず。ここで、過去のバックアップデータで再び上書きしてしまえとばかりに、FFFTPにファイルをアップロード。何とかWordPressの管理画面が表示されなれないかと試みていると、今度は「データベース接続確立エラー」の表示が・・・。「何かの設定ファイルが変更されたのか・・・」と思い、wp-config.phpを見てみるが、特におかしい箇所は見当たらず。うーーんと悩む。
次に「htaccess」を見てみた。特に何も変わった様子はない。あきらめて一度サーバー上のデータを全て削除し、不具合が起きる前のデータを全てFFFTPにアップロードしてみた。今度はWordPress管理画面がきちんと表示され、ログインもできた。
どのプラグインが原因だったのか?
結果からいうと、「WP Super Cache」と「WP File Cache」をインストールすると、500エラーになることがわかった。WP Super Cacheは「wp-content」内に「cache」ファイルを作成し、そこにキャッシングされたファイルを保存している。どうやらこのファイルが原因らしい。この「cache」ファイルと、同じく「wp-content」内にいくつか自動で作成されているファイル(db.php や ini ァイルなど)を削除しなければ、エラーが解消されないことがわかった。結局この2つのプラグインはインストールしないことにした。この時点でのキャッシュプラグインは以下の通りである。
- (追加)001 Prime Strategy Translate Accelerator・・・翻訳ファイル等をキャッシュさせることで高速化するプラグイン
- (追加)DB Cache Reloaded Fix・・・利用するクエリ数を減らすことでデータベースの負荷を軽減できる高速化プラグイン
- (追加)MO Cache・・・負荷のかかる翻訳読込みをキャッシュを利用し高速化するプラグイン
- (導入済)WP Hyper Response・・・データを並列で処理し、体感速度を向上させることが出来る高速化のプラグイン
- (導入済)Quick Cache・・・キャッシュを利用することでサイトの表示速度を高速化させるプラグイン
またも500エラー?!
原因と思われるプラグインを排除し、数個のキャッシュプラグインを導入して様子をみることにした。・・・がまたしても500エラーが発生。前回の経験から、もう一度サーバー上の全ファイルを削除し、再び過去のファイルをアップロード。今度は一つ一つプラグインを導入して試してみた。「001 Prime Strategy Translate Accelerator」インストール・・・問題なし。「DB Cache Reloaded Fix」・・・問題なし。「MO Cache」・・・500エラー発生。とゆーことで、「MO Cache」プラグインを削除し、「wp-content」内に生成されたファイルを全て削除してみた。・・・が相変わらず500エラーのまま。なぜ?ほかのプラグインとの相性が悪いと考え、「Quick Cache」を削除してみた。結果、正常に戻り、WordPress管理画面にアクセスできるようになった。この時点でのキャッシュプラグインは以下の通り。
- (追加)001 Prime Strategy Translate Accelerator・・・翻訳ファイル等をキャッシュさせることで高速化するプラグイン
- (追加)DB Cache Reloaded Fix・・・利用するクエリ数を減らすことでデータベースの負荷を軽減できる高速化プラグイン
- (導入済)WP Hyper Response・・・データを並列で処理し、体感速度を向上させることが出来る高速化のプラグイン
結論・・・キャッシュプラグインはこわい!
結果、正常な状態に戻すまで5時間近くを浪費してしまった。今回の経験で得たことは「キャッシュプラグインを安易にインストールしない」ということだ。インターネットの多くのサイトでは「WordPress 高速化 おすすめのキャッシュプラグイン」と言う感じで、複数のキャッシュプラグインの情報が掲載されている。インストールする際には、慎重になることが大切だ。今回のケースでは、私の環境下での不具合発生であり、削除したプラグインが悪かったとは一概には言えない。他のプラグインとの相性もあるからだ。今回のことで学んだことは以下の通り。
- 一度に複数のプラグインをインストールしないこと
- プラグインの特性・特徴を理解した上でインストールすること
- キャッシュ系のプラグインは慎重に検討すること
- 不具合が発生したら、プラグインと生成されたファイルを削除すること
- 万が一の場合に備え、必ずWordPressのバックアップをすること
調子に乗って何も考えず、とりあえず試してみようとした自分の行動を後悔した一日であった・・・。
この記事へのコメントはありません。