WordPressが更新出来ない

このサーバーでは無いがGMOクラウドのVPSに設置していたWordPressがアップデート出来なくなっていた。
普通なら「PHPのタイムアウト」とか「パーミッション」がよくある原因だが今回はcURLが原因だった。

ダウンロードに失敗しました。: cURL error 28: Operation timed out after 300000 milliseconds with 4868965 out of 9142793 bytes received

cURLのタイムアウトの記述を探したら「/wp-admin/includes/file.php」にあったので関数download_urlのデフォルト値を300から3000に書き換えるとアップデート出来る様になりました。

具体的にはVPSなので直接viで開いて「300」で検索して「3000」に書き換え保存する感じです。
$ sudo vi /var/www/html/wp-admin/includes/file.php

ただ、PHPのタイムアウトみたいに.htaccessやphp.iniで設定出来ないようなのでアップデートの度に変更する必要がありそうだ。そもそも極端にダウンロード回線が遅いGMOクラウドのVPSが問題なので回線を改善して欲しいところです。

photo by[email protected]

Tags: ,

トラックバック

“WordPressが更新出来ない” へのレス2件

  1. m.yamada より:

    uda2 様
    情報ありがとうございます。

    私の環境(xampp)では

    file.php の

    function download_url( $url, $timeout = 300, $signature_verification = false )

    を呼び出している

    class-wp-upgrader.php の

    $download_file = download_url( $package, 300, $check_signatures );

    が明示的に300となっていましたので、ここを3000に変更したらアップデート(->5.2.2)できました。

    が、…アップデートしたら元の300に戻ってしまいました。めでたしめでたし、

    記憶は不正確です。ごめんなさい。

コメントを書く