先日、WordPressのブログを更新しようとしたところ「500 Internal Server Error」と表示され、アクセスできなくなってしまいました。
HearCleanerを操作することで500エラーを回避することができたので、今回はその方法を紹介します。
はじめに
500エラーはサーバーエラーやカスタマイズの失敗などで発生するものなのですが、私の場合サーバー側からメンテナンスの通知は来ていないし、カスタマイズも特に触れていませんでした。
私のサイトでは、前々からたまに謎の「500 Internal Server Error」が発生することがあったのですが、原因は謎のままサイトを初期化していました。
カスタマイズに失敗してサイトを開けなくなってしまった場合は、以下のリンクの方法で復旧することができるのですが、今回のように特に問題がないのに初期化するのは時間がもったいないですね。
そこで、この謎の500エラーの原因が「Head Cleaner」というプラグインにあったので、その原因と対処法を紹介します。
HeadCleanerとは
HeadCleanerは、WordPressのプラグインで「JavaScriptやcssを最適化する」というプラグインで、ブログの速度を上げるのに役立ちます。
普通に使っている分にはとても役に立つプラグインなので、まだインストールしていない人はぜひ使ってみてください。
謎の500 Internal Server Error
結論から言っちゃうと、今回発見した解決方法はHeadCleanerの「キャッシュ」に原因がありました。
私のサーバーは無料の「netowl」と使ったwpblogなのですが、wpblogのディスク使用量は1000MBまでになっています。
今現在謎の500エラーでHeadCleanerを導入している人は、自分のサーバーのディスク使用量を確認してみてください。
もしかしてこの使用量がほぼMAXになっていませんか?
私のブログの場合、この量が最大になってしまうと500エラーが発生しているようです。
では、HeadCleanerの使用をやめなければならないのか…?
そうではありません。
もちろんWordPressの管理画面にログインできなくても問題ありません。
今回の方法はFTPソフトを使うことで解決することができます。
FTPソフトのダウンロードは済ませておいてください。
私は「CyberDuck」というソフトを使っています。Macの人はこのソフトがオススメかもしれませんね。
今回は「CyberDuck」の画面で説明していきます。
復旧作業
CyberDuckで500エラーを復旧するためには、まず自分のサイトにアクセスする必要があります。
こちらの記事でもCyberDuckの使い方を紹介しているので、参考にしてみてください。
FTPでアクセスできたら、いよいよ問題の箇所を修正していきましょう。
※今回の作業は失敗すると、サイトが壊れる危険性があります。
バックアップを取った上、全て自己責任でお願いします。
CyberDuckを使うと以下の画像のように、自分のサイトを構成するファイルが表示されます。
その中にcacheというファイルがあるので、開いてください。
開くと「head-cleaner」というファイルがあるのでこれを削除するのですが、その前に「head-cleaner」の容量がどのくらいなのか確認しておいても良いかもしれませんね。
ちなみに私の場合は、以下のようになっていました。
数値にすると「714.5MB」です。
つまりwpblogで使える1000MBの大半を「head-cleaner」が使ってしまっているという状態です。
このファイルは「キャッシュ」なので、削除してもしばらくすればまた重くなってしまうのですが、原因がわかったのでいちいちサイトを初期化する必要は無くなりました。
ではこれを削除するとどのくらい容量が軽減されるのか試してみましょう。
WordPressの管理画面にアクセスできるのであれば、設定 > HeadCleaner > キャッシュファイル削除というボタンがあるので、ここからでも削除できます。
管理画面も500エラーという場合は「CyberDuck」で先ほどのhead-cleanerを削除してください。
これらの方法でキャッシュを削除した結果、私のサイトのディスク使用量は以下のようになりました。
head-cleanerの700MB分が消え、300MBまで削減することができました。
この状態になれば、WordPressの管理画面にもアクセスすることができるようになりました。
(HeadCleanerのキャッシュが原因だった場合のみ)
まとめ
今まで悩まされてきた「謎の500 Internal Server Error」ですが、この方法を使えば初期化することなく対応することができるようになりました。
ですが、いずれまたキャッシュが溜まってきたときに500エラーが発生すると思うので、HeadCleanerのキャッシュを定期的に削除するなどしないといけないようですね。
もし、キャッシュの自動削除方法が見つかったら、改めて記事を作成する予定です。
そのときはこちらの記事でも追記させていただきます。
ではまた。