アップグレード作業を行う前に、必ず changelog に目を通し、アップグレードするにあたって留意すべき点がないか確認してください。
現在使用しているバージョンを確認するには、DokuWiki が生成したページの HTML ソースを見ます。<meta name=“generator” content=“DokuWiki 2005-02-06” /> などという記述があるはずです。
アップグレードは、次の手順に従って実行するのがもっとも簡単です。
cp -a /path/to/wiki/* /path/to/wikibackup
tar -xzvf dokuwiki-xxxx-xx-xx.tgz
unalias cp cp -rf dokuwiki-xxxx-xx-xx/* /path/to/wiki/
すべてのファイルが新しいものになっていることを確認します。もしそうなっていない場合、次のコマンドを試してみてください。
cp -r dokuwiki-xxxx-xx-xx/* /path/to/wiki/
上記の手順は、推奨される方法に従って、設定ファイルのうち変更を加えるのを conf/local.php などローカル用のものに限り、conf/dokuwiki.php などには手を触れないようにしていれば、常に安全です。DokuWiki はこのような local と名前がつくファイルを上書きしません。また、常に 管理ツール から設定を行うようにすれば、設定は local.php に保存されて安全です。ユーザーデータと アクセスコントロール の情報については、DokuWiki の初期ファイルには参考ファイル(拡張子 .dist のもの)しか入っていないので、上書きされることはありません。
以下は最近のバージョンには存在しないファイルです。インストール後のファイルの中に含まれていないかチェックし、もしまだ存在するようであれば、削除します。
#rc2009-12-02 のバージョンで削除 inc/lang/ar/wordblock.txt inc/lang/ca-va/ lib/plugins/acl/lang/ca-va/ lib/plugins/config/lang/ca-va/ lib/plugins/plugin/lang/ca-va/ lib/plugins/popularity/lang/ca-va/ lib/plugins/revert/lang/ca-va/ lib/plugins/usermanager/lang/ca-va/ # rc2009-01-30 のバージョンで削除 lib/plugins/upgradeplugindirectory lib/plugins/upgradeplugindirectory/action.php # rc2009-01-26 のバージョンで削除 inc/auth/punbb.class.php inc/lang/ko/edit.txt_bak inc/lang/ko/lang.php_bak inc/lang/ku/admin_acl.txt inc/lang/mg/admin_acl.txt lib/plugins/importoldchangelog lib/plugins/importoldchangelog/action.php lib/plugins/importoldindex lib/plugins/importoldindex/action.php lib/plugins/usermanager/images/no_user_edit.png lib/plugins/usermanager/images/user_edit.png lib/tpl/default/UWEB.css # rc2008-03-31 のバージョンで削除 inc/aspell.php inc/geshi/css-gen.cfg inc/lang/fr/admin_acl.txt lib/exe/spellcheck.php lib/images/toolbar/spellcheck.png lib/images/toolbar/spellnoerr.png lib/images/toolbar/spellstop.png lib/images/toolbar/spellwait.gif lib/plugins/acl/lang/ar/intro.txt lib/plugins/acl/lang/bg/intro.txt lib/plugins/acl/lang/ca/intro.txt lib/plugins/acl/lang/cs/intro.txt lib/plugins/acl/lang/da/intro.txt lib/plugins/acl/lang/de/intro.txt lib/plugins/acl/lang/el/intro.txt lib/plugins/acl/lang/en/intro.txt lib/plugins/acl/lang/es/intro.txt lib/plugins/acl/lang/et/intro.txt lib/plugins/acl/lang/eu/intro.txt lib/plugins/acl/lang/fi/intro.txt lib/plugins/acl/lang/fr/intro.txt lib/plugins/acl/lang/gl/intro.txt lib/plugins/acl/lang/he/intro.txt lib/plugins/acl/lang/id/intro.txt lib/plugins/acl/lang/it/intro.txt lib/plugins/acl/lang/ja/intro.txt lib/plugins/acl/lang/ko/intro.txt lib/plugins/acl/lang/lt/intro.txt lib/plugins/acl/lang/lv/intro.txt lib/plugins/acl/lang/nl/intro.txt lib/plugins/acl/lang/no/intro.txt lib/plugins/acl/lang/pl/intro.txt lib/plugins/acl/lang/pt/intro.txt lib/plugins/acl/lang/ru/intro.txt lib/plugins/acl/lang/sk/intro.txt lib/plugins/acl/lang/sr/intro.txt lib/plugins/acl/lang/sv/intro.txt lib/plugins/acl/lang/tr/intro.txt lib/plugins/acl/lang/uk/intro.txt lib/plugins/acl/lang/vi/intro.txt lib/plugins/acl/lang/zh/intro.txt lib/plugins/acl/lang/zh-tw/intro.txt lib/scripts/spellcheck.js lib/styles/spellcheck.css # 2007-06-26 のバージョンで削除 inc/parser/wiki.php lib/images/interwiki/bug.gif lib/plugins/base.php lib/plugins/plugin/inc lib/plugins/plugin/inc/tarlib.class.php lib/plugins/plugin/inc/zip.lib.php lib/scripts/domLib.js lib/scripts/domTT.js # 2006-11-06 のバージョンで削除 inc/admin_acl.php inc/lang/lt/stopwords.txt inc/magpie inc/magpie/rss_cache.inc inc/magpie/rss_fetch.inc inc/magpie/rss_parse.inc inc/magpie/rss_utils.inc lib/exe/media.php lib/tpl/default/mediaedit.php lib/tpl/default/media.php lib/tpl/default/mediaref.php # 2006-03-09 のバージョンで削除 data/pages/wiki/playground.txt inc/auth/ldap.php inc/auth/mysql.php inc/auth/pgsql.php inc/auth/plain.php inc/lang/ca/admin_acl.txt inc/lang/cs/admin_acl.txt inc/lang/da/admin_acl.txt inc/lang/de/admin_acl.txt inc/lang/en/admin_acl.txt inc/lang/et/admin_acl.txt inc/lang/eu/admin_acl.txt inc/lang/fr/admin_acl.txt inc/lang/it/admin_acl.txt inc/lang/ja/admin_acl.txt inc/lang/lt/admin_acl.txt inc/lang/lv/admin_acl.txt inc/lang/nl/admin_acl.txt inc/lang/no/admin_acl.txt inc/lang/pl/admin_acl.txt inc/lang/pt/admin_acl.txt inc/lang/vi/admin_acl.txt inc/lang/zh-tw/admin_acl.txt inc/parser/spamcheck.php lib/images/favicon.ico lib/images/thumbup.gif lib/images/toolbar/code.png lib/images/toolbar/empty.png lib/images/toolbar/extlink.png lib/images/toolbar/fonth1.png lib/images/toolbar/fonth2.png lib/images/toolbar/fonth3.png lib/images/toolbar/fonth4.png lib/images/toolbar/fonth5.png lib/images/toolbar/list.png lib/images/toolbar/list_ul.png lib/images/toolbar/rule.png lib/tpl/default/images/interwiki.png
サーバーのシェルにアクセスできる場合は、上のテキストをコピーしてサーバー上でファイルとして保存した上で次のコマンドを実行することで、リストにあるファイルの存在チェック、および、削除ができます。削除されるのはリストにあるファイルのみです。下のコードでは削除ファイルのリストのファイル名を /tmp/removeold.txt として保存しました。
for f in `cat /tmp/removeold.txt`
do
if [ -f $f ] ; then
ls -l $f
rm $f
fi
done
別の方法として、コマンドラインからの削除もできます。心配であれば下のコードの “rm -rf” を “ls -la” に置き換えれば、削除対象となるファイルが確認できます。リストのファイルにはコメント行や空行があってもかまいませんが、そういう行があった場合、エラーや警告が表示されます。
cat /tmp/removeold.txt | xargs -n 1 rm -rf
アップグレード後、DokuWiki の動作に齟齬がみられた場合、data/cache/ にあるキャッシュ・ファイルを削除してください。また、ブラウザが古いスタイルシートや JavaScript のキャッシュを読み込んだままにならないよう、強制的なリロード(ほとんどのブラウザで Shift-F5 あるいは Shift-R)を行ってください。
この他に、次のページが参考になるかもしれません。
他にも次のようなアップグレードの手順解説(ユーザーによる)があります。少し古くなっているかもしれません。