CMS wiki
Dokuwiki est un moteur de wiki sur lequel tourne ce site. Il est libre et a la particularité de ne pas se reposer sur une BDD de type MySQL ou PgSQL : il enregistre ses informations dans des fichiers. Ainsi il est facile de migrer le Wiki d'une machine à l'autre, avec un simple copier/coller (voir plus bas).
Dokuwiki est doté d'une multitude de plugins afin d'ajouter des fonctionnalités au concept de base ; voici ceux que j'utilise :
Et ceux que j'ai utilisés, PI :
Comme dit plus haut, il est très simple de sauver un wiki ; pour cela il faut sauvegarder les dossiers suivants (valable au moins avec Debian et Ubuntu) :
/etc/dokuwiki
qui contient la configuration (dokuwiki.php et local.php par exemple)/usr/share/dokuwiki
: racine (pour le serveur web)/var/lib/dokuwiki
(data) : qui contient toutes les données du wiki : les pages, l'historique des changements (attic) et les images (media)On peut sauvegarder tout cela très facilement dans une archive dans le répertoire /tmp avec un :
tar cjvf /tmp/dokuwiki_`date +%Y-%m-%d`.tar.bz2 /etc/dokuwiki /usr/share/dokuwiki /var/lib/dokuwiki
Pour faire simple, il suffit de restaurer le zip de la sauvegarde ; mais dans la pratique il faut faire attention aux aspects suivants (attention les chemins sont ceux d'une distribution Debian/Ubuntu) :
/var/lib/dokuwiki/data
, restaurer :/etc/dokuwiki/apache.conf
(“Allow from all”)/etc/dokuwiki/local.php
(personnalisation de dokuwiki)/etc/dokuwiki/users.auth.php
J'ai retenu cela :
chown -r www-data /var/lib/dokuwiki/data chown www-data /var/lib/dokuwiki/lib/plugins
J'ajouterai qu'il faut aussi passer ces commandes :
# les fichiers de conf doivent être modifiables par le serveur web chown www-data /etc/dokuwiki chown www-data /etc/dokuwiki/local.php
Qui permettent d'éviter le problème d'enregistrement des paramètres, dans le “Configuration Manager” :
The settings file can not be updated, if this is unintentional, ensure the local settings file name and permissions are correct.
Et dans mon cas je dois modifier l'alias :
vi /etc/apache2/conf.d/dokuwiki.conf Alias /dw /usr/share/dokuwiki/
Lors de la restauration de mon wiki j'ai eu le message suivant lorsque j'ai édité les paramètres :
Le fichier des paramètres ne peut être modifié, si ceci n'est pas intentionnel, vérifiez que le nom et les droits du fichier sont corrects.
Pas de possibilité de modifier les paramètres via le navigateur donc. Pour corriger cela, il faut vérifier que les fichiers suivants sont accessibles en écriture au serveur web (sous Debian, c'est l'utilisateur et le groupe www-data) : acl.auth.php
, local.php
et users.auth.php
.
Exemple :
ll /etc/dokuwiki/local.php -rw-r--r-- 1 www-data www-data 714 oct. 14 23:42 local.php
Le répertoire /etc/dokuwiki
doit également être accessible en écriture à www-data :
chgrp www-data /etc/dokuwiki chmod g+w /etc/dokuwiki
Le plugin tag pose un problème de présentation avec le thème sidebar, car il ne positionne pas le “floating” avec les menus de droite (l'index des grands titres). Pour résoudre ce problème, il faut modifier la feuille de style CSS. Si on utilise le paquet Ubuntu, le plus simple est de surcharger les styles dans le fichier idoine : /etc/dokuwiki/userstyle.css
vi /etc/dokuwiki/userstyle.css /* Place customisations to screen mode style sheet here */ div.dokuwiki div.tags { border-top: 2px dotted #8cacbb; font-size: 95%; /* text-align: right;*/ /* clear: both;*/ text-align: left; clear: none; }
La barre de recherche interne se base sur un index de mots qui est, normalement, construit au fur et à mesure que les pages sont visitées (via un include dans la page de votre template). Mais, pour certaines raisons (votre template ne comporte pas l'include de la fonction d'indexage, ou vous venez d'importer beaucoup de pages d'un autre wiki dans votre répertoire data), le recherche peut ne pas être pertinente faute d'indexage correct de ses pages.
Le script php indexer.php, situé dans le répertoire bin/
(/usr/share/dokuwiki/bin
sous Debian/Ubuntu), permet de réindexer votre wiki. Utilisation (vérifier au préalable que le client php CLI est installé, et que le fichier indexer.php est exécutable) :
# indexer.php #OPTIONS # -h, --help show this help and exit # -c, --clear clear the index before updating # -q, --quiet don't produce any output cd /usr/share/dokuwiki/bin/ sudo -u www-data php indexer.php -c [..] informatique:os:ubuntu... Indexer: finished done. [..]