目录

dokuwiki vs pmwiki

I've been working a lot with PmWiki over the last year for a client but recently installed DokuWiki on this site. Both wiki's are written in PHP and use flat files rather than the traditional MySQL (or other) route for storing pages. This can cause some file/directory permission problems where you only have ftp access to your server. On Unix the FTP process and web server usually run as different users and groups. Unless you set up very open initial permissions on data directories files created by your wiki may not be accessible by your ftp client. One solution is to install a PHP file manager.

Customizations

DokuWiki looks like the less mature product, there are far fewer themes available and less plug-in scripts. However I prefer the very complete basic functionality of the Wiki, in particular access control is extensive and integrates well with existing content management systems. The ACL system also applies to file uploads. If you want to run a closed or restricted access Wiki DokuWiki is a better choice.

PmWiki wins on templates and themes. There is an extensive library and it was pretty straightforward for me to take my clients existing page layout and CSS and create a PmWiki styled page.

Caching

I prefered DokuWiki's method of storing pages. Changes and the current page are kept separate. It is possible to edit the pages directly on the hard disk with your favourite editor if you need to. PmWiki mixes diffs and the current page, although stored as plain text the format is not exactly human readable. DokuWiki also feels faster, this is probably down to its on disk cache of pages. Rather than running Wiki programme each time a page is loaded with a significant overhead a current version can be retrieved directly from the disk cache. Speed is a major complaint of PmWiki page generation, although there has been talk of caching generated pages nothing has been implemented yet.

Namespaces

Both Wiki's support namespaces but PmWiki's can only go down 1 level. There is a configuration option to store these in separate directories to reduce the overhead on the operation system with very large Wikis. DokuWiki seems to have a saner approach where namespaces map directly onto the the underlying file system hierarchy. I also prefered the DokuWiki naming convention and markup language. I also liked the way it automagically produces a table of contents and divides pages up into sections like Wikipedia.

SEO

DokuWiki is search engine friendlier out of the box with some configuration. With PmWiki I had to delve into the PHP code to get pagename generation how I wanted it and had to write some mods to the login system to hide links from search engines. The only thing against DokuWiki is that even with the SEO friendly features turned on there are lots of different ways of accessing the same page given the use of query strings. These can cause supplemental results problems with Googles and lead to PageRank leakage and other canonicals issues. However a line in the robots.txt file can hide these from Google.

Further Information

http://www.pmwiki.org/

http://wiki.splitbrain.org/wiki:dokuwiki