DokuWiki is a free (as in freedom) wiki, made especially for any kind of documentation. Dokuwiki is file based and thus easy to backup. Dokuwiki can be extended by using the internal plugin manager.
The installation guide below assumes you want to install DokuWiki on a Debian server
apt-get install dokuwiki
In the configuration dialog which is part of Debian's installation process:
You get much nicer URLs if you use Apache's rewrite engine. Therefore you must uncomment the rewrite options in the configuration file.
sed -i -e 's/#Rewrite/Rewrite/' /etc/apache2/conf.d/dokuwiki.conf sed -i -e 's/userewrite.*;/userewrite'\''] = 1;/' /etc/dokuwiki/dokuwiki.php a2enmod rewrite service apache2 restart
By default the configuration allows access from localhost only. If you are satisfied with the basic setup, make it accessible to the world.
sed -i -e 's/Allow from localhost.*/Allow from all/' /etc/apache2/conf.d/dokuwiki.conf apachectl graceful
If you want to use dokuwiki's built-in plug-in manager to install new plug-ins, you first need to allow
www-data to write to the plug-in directory:
chown www-data /usr/share/dokuwiki/lib/plugins
There is a bot for everything on the Internet. From own experience I can tell that one uses the wiki's registration to trap DokuWiki user accounts. I noticed when I checked the mail log.
In Debian the configuration file is for security reasons not writable for the web server. Therefore we disable registration by hand in the file
$conf['disableactions'] = 'register';
If your user list is already full of fake accounts, find the file
users.auth.php (under Debian
/etc/dokuwiki/users.auth.php). Use grep to filter the valid accounts.
It is surprisingly easy to move a Dokuwiki installation from one Debian server to another one.
On the source server pack the data files:
tar czvf /tmp/dokuwiki-data.tar.gz /var/lib/dokuwiki/data
Copy the archive to the destination server and unpack it:
cd / tar xzvf /tmp/dokuwiki-data.tar.gz