Installing DokuWiki

Swobodin's picture
Submitted by Swobodin on Wed, 2006-06-14 12:34. ::
DokuWiki is a free Wiki platfrom written in PHP. It does not use any kind of database, just text files.
Dokuwiki is a powerful tool to make online projects collaboration, secure, valid XHTML and CSS, multi-user, multi-template and can be enhanced by plug-in's. It also has a nice design combined AJAX.
The installation of DokuWiki is not standard. First, make sure that you have userdir mode activated, to install the platform on your local directory. Never do it as root.
Set the following values in your /etc/httpd/httpd.conf
LoadModule userdir_module modules/mod_userdir.so


    UserDir "public_html"

    #Default was:

    #UserDir Disable

As root, set the following permissions
chgrp apache /home/swobodin
chmod 750 /home/swobodin
Activate Apache
/etc/rc.d/init.d/httpd start

Now, login as a normal user; you don't need root privileges amymore.
cd ~
mkdir public_html
chmod o+x public_html
ln -s public_html www
mkdir www/Lab
echo "" > ~/www/Lab/test.php

Point the your browser at the URL to check whether your configuration works
http://127.0.0.1/~swobodin/Lab/test.php
Should be okay.
Next, download the latest DokuWiki version from the official site and uncompress it.
tar xvfz dokuwiki-YYYY-MM-DD.tgz -C ~/www/Lab
cd ~/www/Lab
mv dokuwiki-* dokuwiki
cd dokuwiki

Create an empty log file
cat /dev/null > data/changes.log
Allow user authentication
cd conf
cp -v acl.auth.php.dist acl.auth.php
cp -v users.auth.php.dist users.auth.php
chmod 666 acl.auth.php users.auth.php

Edit doku.php setting the following
$conf['useracl'] = 1; // To enable Access Control List
$conf['superuser']   = 'swobodin'; // Who will be the super user? Note: No uppercase!
$conf['autopasswd']  = 0; // To avoid sending password by mail
And set all privileges to data directory and its subdirectories
chmod 777 .
chmod 777 doku.php
chmod 777 -vR ~/www/Lab/dokuwiki/data

Point your browser at http://127.0.0.1/~swobodin/Lab/doku/wiki
You should see a "Login" button at the bottom of the page. Click there, then click on "Register".
If you register and login as the already defined superuser, you should see a button "Admin" at the bottom.
That's all, edit your settings and start playing with the platform, adding plugins/templates, hacking on the code so that it fits with your needs.