超高速WordPress実行環境 KUSANAGI稼働中
本サイト処理速度
language

    WordPressの自動アップデートが失敗する!?運用していて実際に遭遇した4つの失敗事例+WordPressデフォルト設定

    WordPress

    こんにちは。
    こちらのページはWordPressで作成されたサイトのアプリケーション・サーバ保守運用をする部署の中の人が担当させていただきます。

    さて、今回はWordPressに実装されている自動アップデート機能について失敗事例を紹介したいと思います。まあ、そうだよねってものからなるほどー、というものまであるかと思いますので、ぜひ最後までご覧いただけますと幸いです。

    1. wp-adminと同じ階層にバージョン管理用のフォルダがある

    プログラマー的な視点の話になりますが、バージョン管理をしているにも関わらず、自動でバージョンアップをされていたら単純に困りますよね。
    おそらくそういった観点から、WordPressのコア側でアップデート時にバージョン管理ツールの存在を検知して、もし存在する場合はアップデートを中止する、という仕様になっているようです。

    ただ、wp-content下やwp-adminよりも上の階層であれば検知されないため、場所を選んでバージョン管理を開始すれば問題ないかと思われます。
    WordPress4.9.4現在、以下のバージョン管理ツールが検知されるようです。

    • Subversion(.svn)
    • Git(.git)
    • Mercurial(.hg)
    • Bazaar(.bzr)

    2. wp-content/upgradeフォルダに書き込み権限がない

    自動アップデートの設定をするとき、FTP/SSHユーザー名とパスワードを入力するかと思います。
    (参考:WordPress Codex 日本語版 wp-config.php の編集)
    自動アップデート時、最新のWordPressがまずどこにダウンロードするかというとwp-content/upgradeフォルダで、そこに対してFTP/SSHユーザーの書き込み権限がない場合、アップデートは失敗するという仕様です。

    そのため、自動アップデート設定をした際にupgradeフォルダは自動アップデートを実行するユーザーの権限で書き込みができるよう設定をしておく必要があります。

    3. FTPが止まっている、ポートが塞がっている

    2に付随する話ですが、セキュリティの観点などからFTPを止めている場合や、FTPのミドルウェアを止めている場合には当然ですがFTPを通じたアップデートは失敗します。
    当たり前ではあるのですが、私の場合、サーバ再起動時にFTPが自動起動する設定になっておらず、あたふたしたという失敗談があります。。。

    4. アップデート用のwp-cronが止まっている

    WordPressでは12時間おきにアップデートがないか確かめるプログラムが定期実行されています。
    そのプログラムが実行されていない場合、残念ながら自動アップデートは実行されません。
    現在どのような定期実行プログラムが登録されているにはプラグインを使うか、wpコマンド(参考:WP CLI The command line interface for WordPress)を使って確かめると早いかと思います。

    other. 明示的にアップデートしない設定がされている

    その他、WordPress側で意図的に自動アップデートしない設定をしているが周知されていない、という可能性も踏まえ、設定例を列挙いたします。

    ■最新バージョンを検知するフックを削除
    以下のようなフックがfunctions.phpなどに記述されているとWordPressのアップデートを検知しなくなるため、自動アップデートは実行されることはなくなります。
    remove_action('wp_version_check', 'wp_version_check');

    ■定数でアップデートされないように設定されている
    上記フックの他にもdefineで定数を定義することにより、自動アップデートを明示的にしない設定をすることができます。
    参考リンク:WordPress Codex 日本語版 自動バックグラウンド更新の設定

    いかがでしたでしょうか。
    せっかく自動アップデートの設定をしても実際にアップデートされないことには効果が半減してしまいますので、この機会に見直してみてはいかがでしょうか。

    ではよきWordPressライフを。

    ☆部署の紹介☆

    弊社が提供する運用の内容は主に以下のページから確認することができます。

    KUSANAGIマネージドプラン(おすすめ!)
    → サーバもサイトもまるっとお願いしたい企業様向けのプランです。
    KUSANAGIサポートプラン
    → KUSANAGIは自社で管理して、でもサイトの保守はお願いしたいなーというときのプランです。
    WordPressサポートプラン
    → KUSANAGI以外のサーバを自社で管理して、WordPressサイトだけの保守を依頼できるプランです。

    Webサイトのお悩み解決!個別相談会

    WordPress等CMSで構築されたサイトを運用中(もしくはご予定)で、様々な課題をお抱えの企業Webサイトご担当者様、「技術的にはよくわからないけれどマーケティング的にも改善をしたい」等とお考えのマーケティングご担当者様、「お客様のためにWebサイトについて聞きたい」「クラウドを導入したい」等お考えのWeb制作会社様などを対象に「【法人向け】Webサイトのお悩み解決!個別相談会」を開催しています。

    お客様の課題を解決するソリューション、
    条件に沿ったベネフィットあるご提案を提供いたします。

    ご相談・お問い合わせフォーム