升级
升级之前, 您最好先阅读变更信息, 以便了解升级后会产生哪些变化。
确定所运行的升级程序版本,在dokuwiki html源代码中有类似
<meta name="generator" content="DokuWiki 2005-02-06" />
这样的标记.
以下是简单的升级步骤:The easiest way to upgrade is perform the following steps:
- 对您的wiki进行完整备份(总比后悔要强)
cp -Ra /path/to/wiki/ /path/to/wikibackup
-
tar -xzvf dokuwiki-xxxx-xx-xx.tgz
- 复制/上传所有的文件,覆盖您的旧版本的所有DokuWiki安装文件
cp -rf dokuwiki-xxxx-xx-xx/* /path/to/wiki/
- The quotes around cp make sure the command works even when cp is aliased to cp -i
- Remove old files that are not used anymore (See below for a list of files)
- Fix permissions if needed; including possibly new directories under
data/
- Compare your .htaccess with the delivered .htaccess.dist for needed changes
- Update your plugins and template
The above steps are safe when you always adhered to the advice to only change local versions of your config files (like conf/local.php
instead of conf/dokuwiki.php
). DokuWiki will not overwrite those local files. If you always used the config manager you're on the safe side as it always saves to local.php. Also user data and ACL information are never overwritten because DokuWiki only ships examples (with a .dist
extension).
Files to remove
Here is a list of files that were removed in recent releases. You should check if they still exist in your install. If they do, delete them.
# removed in 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/ # removed in rc2009-01-30 lib/plugins/upgradeplugindirectory lib/plugins/upgradeplugindirectory/action.php # removed in 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 # removed in 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 # removed in 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 # removed in 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 # removed in 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
People with shell access to their server can copy the text above and paste it into a file on the system, then run the following commands to check for and remove all those files. Only those that exist are removed. I used the filename of /tmp/removeold.txt to store the list of files copied from here.
grep -Ev "^($|#)" /tmp/removeold.txt | xargs -n 1 rm -f
If you are paranoid, replace the “rm -f” with “ls -la” to see what files will be deleted.
To remove directories as well as files you have to use:
grep -Ev "^($|#)" /tmp/removeold.txt | xargs -n 1 rm -fd
However, some systems may not support the “rm -d” option for directory removal. In that case, you have to use recursive removal (just be sure to double-check that the file list does not include any paths that will delete too much):
grep -Ev "^($|#)" /tmp/removeold.txt | xargs -n 1 rm -fr
Troubleshooting
If you encounter some inconsistencies in DokuWiki's behaviour after upgrading, you should delete the cache files in data/cache/
. You should make sure your browser hasn't cached old stylesheets or JavaScript by forcing a reload (Shift-F5 or Ctrl-Shift-R in most browsers).
Related pages that might apply:
- updatecheck – if update notifications persist
- toolbar – Quickbuttons and JavaScript problems
Alternative Ways
Here are a few different upgrade descriptions, provided by users. They might be slightly out of date.
- Upgrading by APS - has anybody test this yet?