Ceci est une ancienne révision du document !


DokuWiki

DokuWiki est un moteur de wiki libre et relativement simple.

Il permet de créer des documentations de toute sorte. Cette Application web est développée en PHP par Andreas Gohr.

Il s'agit techniquement d'un CMS flat file. On entend par là qu'il n'utilise pas de base de données. Le contenu dynamique est stocké sous forme de fichiers .txt avec de l'indexation. :-P
Ceci permet à DokuWiki d'être plus rapide que MediaWiki pour présenter les pages au visiteur.1)2)

DokuWiki est toujours activement maintenu, mais il s'agit d'un projet ancien.
Il existe aujourd'hui des solutions plus modernes, rapides, sécurisées et simples d'utilisation, permettant de mettre en place des documentations participatives (en particulier des générateurs de sites statiques).

Voir ce message sur le forum. On peut citer par ex. :

DokuWiki est la solution utilisée pour notre wiki, et donc cette documentation.

Installation

DokuWiki étant une solution destinée à être déployée sur un serveur, toutes les manipulations dont nous traiterons ici se feront en ligne de commande.
DokuWiki est une application accessible directement en ligne. Pour des raisons importantes de sécurité, il est impératif de toujours utiliser la dernière version et de la maintenir à jour.

DokuWiki est disponible dans les dépôts officiels d'Ubuntu, mais la version ainsi proposée n'est presque jamais la dernière.

D'une manière générale APT et les dépôts d'Ubuntu et Debian (format deb) ne sont pas pensés pour fournir des versions particulièrement récentes des logiciels. Par conséquent ils ne conviennent généralement pas au déploiement d'applications ou services web.

C'est pourquoi nous documentons ici une installation manuelle, qui peut se mettre à jour elle-même.

Prérequis

Pour installer DokuWiki vous aurez besoin d'un serveur HTTP et de PHP.

Sur un hébergement web géré par l'hébergeur, ces prérequis devraient déjà être en place, donc toutes ces étapes devraient être inutiles.

N'hésitez pas à contacter le support de l'hébergeur si ce n'est pas le cas.

Apache est le serveur HTTP le plus couramment utilisé, c'est celui que nous choisirons ici.

Pour installer Apache et PHP :

sudo apt install apache2 php libapache2-mod-php

DokuWiki requiert ensuite l'activation de certains modules PHP qui ne sont pas installés par défaut sous Ubuntu :

sudo apt install php-curl php-gd php-intl php-json php-mbstring php-xml php-zip

DokuWiki a aussi besoin du module mod_rewrite :

sudo a2enmod rewrite

Nous allons ensuite créer un hôte virtuel pour DokuWiki, dont la racine sera /var/www/dokuwiki :

sudo nano /etc/apache2/sites-available/dokuwiki.conf

Ce qui ouvre un fichier dans lequel nous allons coller :

dokuwiki.conf
<VirtualHost *:80>
        ServerName dokuwiki.localhost
        DocumentRoot /var/www/dokuwiki
        <Directory /var/www/dokuwiki>
                AllowOverride all
                Require all granted
        </Directory>
        ErrorLog /var/log/apache2/error.dokuwiki.log
        CustomLog /var/log/apache2/access.dokuwiki.log combined
</VirtualHost>

Si un nom de domaine pointe sur le serveur, on l'indique à la place de dokuwiki.localhost pour la directive ServerName.
(Ctrl+X puis O pour quitter en sauvegardant)

Finalement, on active l'hôte virtuel et on recharge la configuration d'Apache :

sudo a2ensite dokuwiki
sudo systemctl reload apache2
Si votre serveur est sur le Web, pensez à sécuriser l'accès au site en particulier en forçant HTTPS.

Installation de DokuWiki

Tout d'abord téléchargeons la dernière version de DokuWiki depuis le site officiel :

wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz

Ensuite nous allons extraire le contenu de l'archive à la racine de notre hôte virtuel (/var/www/dokuwiki pour l'exemple) :

sudo tar -xvzf dokuwiki-stable.tgz -C /var/www
sudo mv /var/www/dokuwiki-* /var/www/dokuwiki

Attribuons des permissions correctes au fichiers et répertoires. DokuWiki a besoin de droits permissifs afin de faciliter les mises à jours :

sudo chown -R $USER:www-data /var/www/dokuwiki
chmod -R -rwx,u+rwX,g+rwX /var/www/dokuwiki
En production, il est important d'améliorer la sécurité en utilisant des permissions plus strictes.

Seuls les répertoires /data et /conf doivent être modifiables par www-data :

chmod -R a-rwx,u+rwX,g+rX /var/www/dokuwiki
chmod -R g+w /var/www/dokuwiki/data /var/www/dokuwiki/conf

DokuWiki devrait alors être accessible à l'adresse http://dokuwiki.localhost/.

Il reste maintenant à ajuster la configuration, en commençant par renseigner le nom du wiki, ainsi qu'un nom d'utilisateur, un email et un mot de passe pour l'administrateur du site : http://dokuwiki.localhost/install.php.
Un sélecteur est disponible en haut à droite de la page pour choisir sa langue.

Utilisation

Le site est visible sur http://dokuwiki.localhost/, l'interface d'administration est accessible sur http://dokuwiki.localhost/?do=admin.

Plugins

Il suffit de copier l'adresse du paquet de plugin à installer et de le copier dans la page des plugins, puis valider pour l'installer. Voir la page listant les plugins disponibles.

Des plugins intéressants :

Dans une vision de page au même niveau et tagué :

Dans une vision hiérarchisée des pages :

  • Menu : indexmenu
  • Inclure des pages ou morceau de page , dans une autres : include

Dans une vision site/blog/cms :

Mesure anti-spam possible :

  • badbehaviour (bloque les spambots), Captcha,
  • Changer les droits ACL pour que l'édition / écriture de page ne se fasse que pour des utilisateurs connectés, et simplifier l'accès avec OpenID

Thèmes

  • Il est facile d'installer des templates : il suffit d'extraire l'archive du template (habituellement un fichier .zip ou .tgz) dans le répertoire lib/tpl/1).
  • Sélectionnez ensuite le template depuis le gestionnaire de configuration en ajustant le paramètre template.

La syntaxe de mise en page

Maintenance

Convertisseur

Trucs et astuces

Voir aussi