海外からの不正アクセスを食らったのが原因でレンタルサーバー会社からアクセス制限をかけられてしまったことが以前あって、それ以来Wordpressのバージョンは極力最新状態にして利用することにしている。アップデートというのは、シロウトからすれば結構心配な作業の1つなのだが、これまで特に大きな問題も起こらなかったので、今回もバージョン4.7にアップデート。
ところが、アップデート後に突然、管理画面が表示できなくなった。サイトは表示できるのに、管理画面に入れない。ログインとすると「このページは使えません」みたいな、ざっくりしたエラーが出て終わり。こういう時はやっぱり焦る。
「レンタルサーバーのサポートにメールしてみるか・・・、いやいや、まずはググろう。」
ブロガーは自力解決がデフォルトである。
エラーの原因を探る
こういう場合にググると、”まずはエラーログを見るべし”と出てくる。エラーログは通常、レンタルサーバー会社の管理ツールサイトで入手できる。
エックスサーバーなら[統計]の[ログファイル]から。
FireBirdなら[ホームページ]の[ログファイル]から。
ログファイルをダウンロードし、メモ帳などで開く。
今回の場合は、こんな感じ。
”PHP Fatal error: Allowed memory size of 41943040 bytes exhausted”というのは「メモリー足りないよ」的な意味らしいということは、これまたググってわかった。
WordPressの場合、何のメモリーが不足しているのかというと、PHP用のメモリーだとか。これを増やせばいいのか・・・。
PHPの設定変更
PHPの場合、割り当てメモリーの量が調節できるようになっている。memory limitと呼ばれる値だ。
”memory_limit = 64M”とか、そういった記述をphp.iniに書いたり、.htaccessに書いたり、あるいはwp-config.phpに書いたりするらしいのだが、レンタルサーバーの場合はどこに書けば・・・。
と思ったら、管理ツールにあっさり項目があった。
エックスサーバーの場合は[php.ini設定]。
Firebirdの場合は[php環境設定]。
最近作成したWordpressのサイトなら、php.iniのmemory_limitは200Mとかになっているようだが、昔からのサイトというのは案外このmemory_limitが少なく設定されているらしい。私のサイトは30Mなどというとんでもなく少ない設定になっていて、これが今回の原因だった。これを200Mにしたところ、あっさり管理画面に入れて、心底ホッとした。
原因はプラグインの使い過ぎ?
それにしても今までWordpressのアップデートでこんなトラブルになったことがないのに、なんで今回起きたのか。
WordPressでメモリー不足に陥る要因としては、大容量のファイルを扱ったりした場合や、メモリーを喰うプラグインを多用している場合などだそうな。確かにプラグインの多用は当てはまる。今回までは少ないメモリー設定でも何とかやってこれたのだが、今回のアップデートは乗り切れなかったということか。いずれにしても、遅かれ早かれ、といった感じだろうか。
意外と簡単に対処できたので良かったが、それでもトータルで50分はかかった。焦ってプラグインを全部消したりしなくて本当に良かった。バックアップを取って消す寸前まではいったけどね。