WordPress はこまめにバージョンが上がるから、嬉しいやら困るやら。
バージョンアップ時の手間は面倒だと感じるが、セキュリティホールやらを放置されるよりはマシと思う。
WordPress Developer に感謝を。
SSH できる場合のアップグレード方法
覚書ということで。
今回、 2.8.2 から 2.9.2 へのアップグレードしたときの方法。
古いバージョンの WordPress を止めることなく、新しいバージョンの WordPress と取り替えます。
1. ファイルの解凍
コンテンツディレクトリに移動して、 tmp ディレクトリを作成。
# cd public_html # mkdir tmp
以下のような構成 ( WordPress ディレクトリ、 tmp ディレクトリがある環境 ) で考えます。
public_html/ ├ tmp/ └ wordpress/ ( 現在動いている WordPress )
tmp ディレクトリに移動。
# cd tmp/
最新バージョンを拾ってくる。
# wget http://ja.wordpress.org/wordpress-2.9.2-ja.zip # unzip wordpress-2.9.2-ja.zip
こうなります。
public_html/ ├ tmp/ │ └ wordpress/ ( 最新の WordPress ) └ wordpress/ ( 現在動いている WordPress )
2. 解凍後のディレクトリの所有者
※ ユーザ、グループを hoge:hoge としています。
# chown -R hoge:hoge wordpress # cd wordpress
3. 古い WordPress ディレクトリから必要ファイルを持ってくる
※ $OLD_SOURCE は /public_html/wordpress のように、現在 WordPress が動いているディレクトリ
設定ファイルのコピー。
# cp -p $OLD_SOURCE/wp-config.php ./ # cp -p $OLD_SOURCE/wordpress/.htaccess ./
記事作成時にアップロードしたファイル ( 画像など ) をコピー。
# cp -r -p $OLD_SOURCE/wp-content/uploads/ \ ← 改行 ./wp-content/uploads/
プラグインのコピー。
# cp -r -p $OLD_SOURCE/wp-content/plugins/* \ ./wp-content/plugins/
TEST というテーマを使っている場合、もしくはテーマをカスタマイズして使っている場合などは、テーマディレクトリをコピーする。
# cp -r -p $OLD_SOURCE/wp-content/themes/TEST \ ./wp-content/themes/
4. 特定のディレクトリの所有者変更
以下のディレクトリを Apache ユーザに合わせておく。
この例では www だが、 apache や httpd かもしれない。環境による。
ディレクトリを Apache のユーザにすることで、 WEB 上からプラグインやテーマを編集できるようになる。
# chown -R www:www wp-content/plugins # chown -R www:www wp-content/themes
5. バックアップ&入れ替え
# cd /public_html/ # mv wordpress wordpress.bak100221; mv tmp/wordpress/ ./ # mv wordpress.bak100221 tmp/
6. ダッシュボードにアクセス
データベースをアップグレードする。
また、プラグインが使えているかどうか、チェック。
7. WordPress の URL にアクセス
全体や、特定の記事にアクセスして、正常性を確認する。
以上、 OK 。のはず。