Table des matières

< Retour à l'index

Dokuwiki

C'est un wiki particulièrement léger et fonctionnel, précisément celui que vous lisez en ce moment!

:!: La syntaxe d'écriture de dokuwiki est une variante moins classique que le markdown de github, mais ancienne et probablement plus lisible (selon nous).

Installation

Aller sur https://download.dokuwiki.org/, cliquer "Download" et repérer le lien de téléchargement.

Sur le serveur, on récupère le paquetage et on copie son contenu dans l'arborescence du serveur web:

DEST=/var/www/html/wk
cd /tmp/
wget https://download.dokuwiki.org/out/dokuwiki-8a269cc015a64b40e4c918699f1e1142.tgz
tar xvzf dokuwiki*.tgz
mkdir -p $DEST/
cp -a dokuwiki/* $DEST
chown -R www-data:www-data $DEST

Note: on a installé dokuwiki ici dans le dossier wk et non pas dokuwiki. C'est une (petite) mesure pour réduire les tentatives d'attaques scriptées bêtes et méchantes qui recherchent si vous avez un dokuwiki sur votre site.

Une fois copié, aller sur la page web wk/install.php de votre site pour finaliser l'installation. La documentation recommande de détruire le fichier install.php ensuite.

:!: Si vous avez un 403 Forbidden, vérifier que la ligne location ~ /(conf/|bin/|inc/|install.php) { deny all; } n'est pas activée dans la configuration du serveur web (cf. configuration nginx).

note: si besoin, la configuration peut aussi être réglée directement dans le fichier conf/dokuwiki.php. C'est utile par exemple pour faire pointer le $conf['savedir']="./data" vers /home/dokuwiki_data par exemple, ce qui le met dans une zone habituellement sauvegardée et éloignée de www-data (sécurisation).

Mise à jour

On recommande quand de mettre à jour régulièrement votre wiki, qui vous dira lorsqu'une nouvelle version est disponible.

Pour se faire, il suffit de répéter l'opération d'installation, en écrasant le contenu de la nouvelle archive (cp -a du contenu par dessus l'existant, puis un éventuel chmod), c'est aussi simple que cela!

Contenu

Vos données se trouvent dans le dossier data/ du site. C'est aussi ce dossier qui doit être sauvegardé, dokuwiki assurant une compatibilité parfaite depuis 2005!

Il suffit d'archiver le dossier data/ en oubliant éventuellement le cache, par exemple ainsi:

tar cvzf backup.tgz --exclude cache /var/www/html/wk/data/

:!: Un aspect très intéressant de dokuwiki est qu'il est trivial de générer des pages par un moyen automatisé: il suffit de cibler un dossier et un nom de page (.txt) dans le dossier data/ pour qu'il soit consultable dans le wiki. C'est très intéressant pour générer des statistiques dynamiques (par exemple via un cron qui génère votre page d'accueil personnelle).

Je l'utilise par exemple pour publier la documentation de mes API sur un gros projet C++ en le parcourant directement et en extrayant des commentaires spéciaux formattés en markdown. Ainsi à chaque compilation, je publie la documentation en ligne, directement dans le wiki!

Protéger dokuwiki

Pour protéger comme conseillé les zones sensibles du wiki, ajoutez cette section dans la zone VirtualHost de /etc/apache2/sites-enabled/*:

<Directory ~ "/var/www/html/wk/(bin/|conf/|data/|inc/)">
    <IfModule mod_authz_core.c>
        Require all denied
    </IfModule>
    <IfModule !mod_authz_core.c>
        Order allow,deny
        Deny from all
    </IfModule>
</Directory>

Plugins importants

On installe un "greffon" (plugin) depuis la console d'administration web, qui figure en haut à droite de la page dokuwiki. Il faut bien sûr être soi-même dans le groupe admin, tel qu'indiqué dans la gestion des utilisateurs.

Allez dans le "Gestionnaire d'extensions": le plus simple reste de passer par l'onglet Rechercher et installer… puis de saisir le nom du greffon intéressant.

Parmis les innombrables plugins (liste complète sur le site officiel), quelques uns sont particulièrement utiles:

Move

Le greffon nommé Move permet de renommer ou déplacer des pages ou des sections (une fois sur la page en question, cliquer "Administrer" et choisissez "Déplacer/Renommer pages et catégories…")

SMTP

Le greffon SMTP va permettre d'envoyer des notifications par emails, tels que la création d'un compte, ou bien un changement sur une page, un abonnement, etc.

:!: Dans l'interface d'aministration, vous aurez certes à configurer les éléments du plugin "SMTP" comme ci-dessous, mais aussi à reporter la même adresse email dans le champ général Adresse de courriel de l'expéditeur des notifications par courriel du wiki (typiquement un noreply@monsite.com), afin de ne pas se faire refuser le relai par mailinabox.

Autres plugins

Voilà quelques autres plugins intéressants:

Edition

Export

"Syntaxes" additionnelles

Fonctionalités

Esthétique

Exemple de thèmes modernes, "responsive" et probablement plus jolis que celui par défaut très "old school":

OAuth google

Il est possible de s'identifier sur Dokuwiki via son compte Google. Il faut pour cela avoir créée une autorisation préalable pour Dokuwiki chez Google. Ci-dessous les deux écrans pour le wiki.kideba.com: