エックスサーバーでwordpressのプラグインが更新できない時の解決策

症状

パソコンなどの調子がおかしい時の状況を「症状」というのは正しい日本語なのかわかりませんが、意味は伝わると思うので使ってます。

エックスサーバーに設置した複数のサイトでWordpressのプラグインを更新した際に下記のような状態で止まってしまいました。

ここで止まってしまう

この状態で「インストール済みプラグイン」を見てみると、プラグインは最新版になってますが無効状態です。

毎回手動で有効化するのは面倒ですし、プラグインのが停止期間はできるだけ短い方がいいので対処しました。

解決策

解決策を3つにわけて書いてますが、どれもphp.iniの修正です。

まずはエックスサーバーの管理画面にログインします。

エックスサーバーのサーバーパネル
上記のサーバーパネルの方です。(インフォパネルではありません)

その中の「php.ini設定」をクリック

php.ini設定画面

このような画面になるかと思います。

一般的な解決策

「max_execution_time」(上記1)の数値を「60」へ変更し、エラーが解消されるか確認

「memory_limit」(上記2)の数値を「300M」へ変更し、 エラーが解消されるか確認

私の場合、これでは解決しませんでした。

今回の解決策1

エラーログに「PHP Warning: Directive ‘magic_quotes_gpc’ is deprecated in PHP 5.3 and greater in Unknown on line 0」というエラーがありました。

これは上記の「3」を「off」にします。
通常offで良いのですがなぜかonになってました・・・思い当たるフシはあります。(後述)

エックスサーバーのエラーログ確認方法 http://www.xserver.ne.jp/manual/man_server_log.php

今回の解決策2

上記解決策でも解決できなかったサイトもありphp.iniを変更した覚えがないので、上記「4」でphp.iniをリセット。

結果

plgikd5

直りました。
以上です。


「思い当たるフシ」について

サイトのスピードアップのためにglip圧縮をonにしようとした時に間違って「magic_quotes_gpc」をOnにしてしまったのでしょう。php.iniはそれ以外で触ったことないです。

正しい方法については、「gzip圧縮でCSSやJSなどの転送量を減らす方法」をご覧ください。
この通りに設定しただけで、

plgikd4

このようにファイルサイズが1/5になりました。