WordPressのアップグレード時のエラーや注意点

基本的な流れ

WordPressのアップグレード作業は、スムーズに行けば以下の流れで完了します。

  1. DBバックアップ(システムも一応コピーなどしておくと吉)
  2. プラグインを全て無効にする
  3. WordPress本体のアップグレードを実行
  4. プラグインを全て有効にする
  5. プラグインを1つずつアップグレードする

WordPress標準のアップグレード機能は、ボタンを押すだけで自動的に更新してくれるというスグレモノですが、スムーズにできたことがない!という方も多いと思います。WordPressの自動更新は若干クセがあるので。。

WordPress アップグレード画面

以下、参考になれば幸いです。

FTPを使わないアップグレード

通常、そのままアップグレードを行おうと「いますぐ更新」ボタンを押すと、FTP情報の入力を求められて毎度ガッカリしてることとお察します。 でも実は、FTP接続しなくてもアップデートはできます。 設定ファイルに以下の設定を追記してみてください。

/* FTPを使用せずにアップグレードできるようにする */
define('FS_METHOD', 'direct');

これで、「いますぐ更新」ボタンを押したとたんにアップグレード処理が始まるようになります。

「ルートが見つかりませんでした」と出る場合

FTPを使ってアップグレードを行う場合、以下の3行の設定が無いと「ルートが見つかりませんでした」と表示される場合があります。 設定ファイルに以下の設定を追記してください。 (以下/home/wp/public_html/は適切なパスに読み替えて下さい)

define('FTP_BASE', '/home/wp/public_html/');
define('FTP_CONTENT_DIR', '/home/wp/public_html/wp-content/');
define('FTP_PLUGIN_DIR', '/home/wp/public_html/wp-content/plugins/');

「ファイルをコピーできませんでした」と出る場合

PHP実行ユーザーとファイル所有者が異なる場合、うまく自動更新されません。この場合、対象ファイルを全て一旦PHP実行ユーザー所有に変更することでなんとかなります。 (以下/home/wp/public_html/は適切なパスに読み替えて下さい。また、PHP実行ユーザーがapacheの場合を想定してます)

chown -R apache.apache /home/wp/public_html
chown -R wp.wp /home/wp/public_html
chown -R apache.apache /home/wp/public_html/wp-content/uploads
chown -R apache.apache /home/wp/public_html/wp-content/plugins

上記、wp-content/uploadswp-content/pluginsについてはWordPress側の管理なので、所有をPHP実行ユーザーにさらに直しています。

※DBキャッシュ系のプラグインを使ってる場合、プラグイン内フォルダのcacheフォルダもPHP実行ユーザー所有にしないとエラーが出るかもしれません。
※他にも所有を戻す必要がある個所があるかもしれません。ご確認を。

画面が真っ白になったとき、エラーメッセージを確認したい

もし、アップグレードに失敗し、公開ページが真っ白になって何も表示されない状態になったら、設定ファイルに以下の設定を追記するとエラーメッセージが出力されるようになりますので、解決へのイトグチにしてください。

/* エラーメッセージを表示するようにする */
define('WP_DEBUG', true);

エラーメッセージ確認後、または問題解決後には、上記設定はコメントアウトするかtruefalseにするなどして、無効にしておくことが大事です。
余計なエラーメッセージの表示を残しておくとアタックの標的にされやすいですのです。

DBキャッシュ

DB Cache Reloaded Fix」というプラグイン使ってる場合、以下のファイルが自動で生成されますが、アップグレードがうまくいかない場合はこれらのファイルを一旦削除するといいかもしれないです。 (以下/home/wp/public_html/は適切なパスに読み替えて下さい)

/home/wp/public_html/wp-content/db-config.ini
/home/wp/public_html/wp-content/db.php

それでもダメ、アップグレードできないズラ!

仕方ないです、管理画面上からの自動アップグレードは諦めて下さい。 この辺を参考にしながら手動で最新版のWordPressプログラムをダウンロードして頑張るほかありません・・!

ファイト!

おまけ:古いバージョン→最新版アップグレードのための参考ページ

対象の古いバージョン 説明
WordPress 2.7以降 自動アップグレード、または手動アップグレード
WordPress 1.5.x~2.6.5 手動アップグレード
WordPress 1.2.x以前 手動アップグレード(一旦1.5に、その後↑の作業)
WordPress ME 手動アップグレード

ちなみに、特殊なプラグインやメンテされていないプラグインが入っているような場合は、かなり注意した方がいいですね。差し替えられるプラグインがあればいいのですが、自作しなくちゃいけなくなったり、結局できませんでしたーなんてことになりかねませんのでね・・。

以上です。参考になれば幸いです。