WordPress 2.7 も beta3 までリリースされていたので、次のリリースこそは 2.7 …と思っていたら、またもやセキュリティの問題で 2.6.5 がリリースされました。 😕 WordPress 2.6.5 日本語版の手順を整理しておきます。

基本的には Codex の Upgrading WordPress Extended と同様ですが、気づいた点を補足しています。

前提条件

  • CentOS 5.2 が動作していること
  • WordPress 2.6.3 日本語版が動作していること
  • phpMyAdmin がインストールされていること
  • Web ブラウザ側は Windows Vista 日本語版 SP1 + IE7

Apache 2.x 向けの XSS 脆弱性ほか 3点が fix

WordPress Blog によると、Apache 2.x で IP アドレスベースの仮想サーバを構築している場合にのみ XSS ((Cross Site Scripting: クロスサイトスクリプティング)) の問題があったのを修正したようです。この問題を修正するだけなら 2つのファイルを上書きするだけでも良いようですが、実際にはほか 3つの問題を修正し、合計 5つのファイルがアップデートされています。

wp-config.php は今回変更なし

wp-config-sample.php に差異はありませんでした。現在使用中の wp-config.php がそのまま利用できます。

SQL DB のバックアップを作成する

Codex では SQL DB のバックアップを取れと書いていますが、アップグレード手順の中で読み込むわけではないので、他のバックアップ手段があるなら、それで代替しても可です。(e.g. Virtual Server or VMware の仮想ディスクごとバックアップを取ったなど。)

WordPress の SQL データベースのバックアップを取るため、phpMyAdmin にログオンします。
左側に WordPress のデータベース名が表示されているのでクリックします。

[エクスポート] をクリックします。

エクスポートのオプション選択です。

  • [DROP TABLE / DROP VIEW を追加] にチェック
  • [ファイルに保存する] にチェック
  • 圧縮: [なし] または [gzip 形式] を選択

したうえで、一番右下の [実行] をクリックすると .sql ファイルを保存できます。

そんなに投稿が多くない場合は圧縮: [なし] が安全確実、多い場合は [gzip 形式] で保存します。
([zip 形式] では、エクスポートできても、インポートに失敗することがあるようです)

エクスポートしたファイルが正常に読めることを、インポートしてみて確認します。
他に環境がないなら同じサーバにインポートするしかありませんが、できたら WordPress インストールしたての中身が空のテスト環境を用意して、すべての記事が読めることを確認した方がよいでしょう。

うまくインポートできれば、次のように表示されます。

さらに、実際にブログをリロードしてみて、正しく表示されることを確認します。

SQL DB 以外のバックアップ

現在インストールしてある wordpress 関連のファイル群を元に戻せるようにバックアップしておきます。特に以下のカスタマイズしたファイルや、アップロードした画像などは、消えるとヒサンなのでいつでも元に戻せるようにしておきます。

  • wp-config.php
  • wp-content/ (ただし wp-content/cache ((案外消し忘れます)) , wp-content/plugins/widgets フォルダは消去する)
  • .htaccess
  • robots.txt
  • wp-images/ (無ければないで OK)
  • wp-includes/languages/ (無ければないで OK)

WordPress 2.6.5 をインストールする

  • 可能なら、Web サイト自身が外からアクセスできない状態にし、「工事中」のサイトに誘導したり、503 Service Temporarily Unavailable を返すようにしておきます。
  • WordPress 2.6.3 の管理画面で [プラグインをすべて停止] しておきます。(重要)
  • 日本語版公式サイト http://ja.wordpress.org から wordpress-2.6.5-ja.zip をダウンロードします。
  • 展開 / アップロードします。
  • 必要に応じて、所有者 / グループを chown -R を使って、現在の環境と合わせて、
  • 現在の wordpress 環境に上書きします。

以下は、サーバーにログオンできる場合です


# wget http://ja.wordpress.org/wordpress-2.6.5-ja.zip
# unzip wordpress-2.6.5-ja.zip
# chown -R xxxxx.xxxxx ((現在の環境に合わせる)) ./wordpress
# cd wordpress
# tar cf - ./ | (cd /var/www/xxxxxx ((WordPress のインストール先を指定)); tar xvpf -)

データベースのアップグレード

今回、データベースのアップグレードはありませんでした。

プラグインはまだ停止したまま、投稿、画像などのアップロード、コメント、トラックバックなど一通り試してみます。

プラグインを少しずつ on にしてみる

基本動作が OK なら、プラグインを徐々に on にしていき、動作を確認します。

WordPress の公式サイトに、プラグインの互換性リストがありますが、自分でも試してみたほうがいいと思います。上記サイトに書いてないもので NG だったもの、Conflicting plugins に入っていても機能限定で動くものがあるようです。リストを作りました。

独自のカスタマイズをもう一度やり直す

テーマなどではなく、WordPress 本体に独自のカスタマイズや修正を行っていた場合は、アップグレードで消えてしまうので、再度やり直します。たとえば私の場合はこれ。

「続きを読む」(more…) をクリックしたときのパーマリンクから “#more-” を除去する