Accueil du site > Technique en vrac > Introduction à DokuWki

Introduction à DokuWiki

Asdrad Torres

Réseau Associatif et Syndical
Centre de Ressources
Historique des versions
Version 19/12/2009A.T.

Màj section Free

Version 227/12/2009A.T.

Ajout mise à jour chez Free


1. Spécificités

DokuWiki n'utilise pas de BdD. Il se contente de fichiers plats. Cela simplifie l'installation, élimine d'éventuels problèmes de compatibilité et simplifie toutes les opérations de maintenance (dont la sauvegarde). Dans de nombreux cas (petit wiki, hébergeur "gratuit"), le fait de ne pas avoir recours à une BdD accélère considérablement les temps d'accès au wiki. Orienté vers la rédaction de documentations, il privilégie l'interface de rédaction par rapport à la consultation.

Le mode de rédaction envisagé est du type cumulatif plutôt que délibératif. En effet, aucun outil d'analyse différentielle de versions n'est fourni. Chaque auteur "améliore" le travail des précédents ce qui suppose qu'il existe une forte cohérence de points de vues entre les différents contributeurs. C'est donc un outils rudimentaire où l'on ne retrouvera pas les fonctionnalités délibératives dont dispose des moteurs lourds comme mediawiki (wikipedia).

L'interface existe dans de nombreuses langues, mais la documentation est en anglais. Elle est peu commode à utiliser car uniquement disponible au format et avec "l'ergonomie" wiki.

À mon avis, la principale faiblesse[1] de ce moteur vient de la pauvreté des outils d'administration et, comme souvent, d'une logique des droits (ACL) fort mal expliquée.

2. Installation

2.1. Première installation

L'installation est possible sur Free (et compatible avec les restrictions d'allocation de droits) et probablement chez tout hébergeur proposant du PHP (donc pas 9online).

La meilleure manière de procéder à l'installation est de rapatrier et décompresser l'archive sur son poste de travail. Il faudra créer certains fichiers de configuration, à partir des fichiers de distribution (fichiers toto-dist-xxx.php), et créer des fichiers ou répertoires vides. Toutes les adaptions sont expliquées sur la page du manuel d'installation. Une explication en images animées illustre une installation de type "hébergeur". Une fois les adaptations réalisées, on télédépose chez l'hébergeur le répertoire complet. C'est sensé fonctionner du premier coup.

Avertissement

Si vous utilisez une apostrophe dans le nom de votre site (paramètre title), cela peut provoquer une erreur de syntaxe PHP et rendre le site totalement inopérant (page blanche). Évitez les apostrophes ou backslashez-les : 'De l\'utilisation correcte des apostrophes'...

2.2. Mise à jour

Une mise à jour est généralement plus complexe qu'une première installation. Dokuwiki ne déroge pas à cette règle non écrite. La première crainte est la perte des données enregistrées dans le wiki. Une deuxième crainte concerne les réglages du wiki. Enfin, l'utilisateur expérimenté qui a apporté ses "amélioration" à l'installation de base souhaitera les conserver. Je ne traiterai directement de ce troisième cas.

L'organisation générale de dokuwiki ansi que celle de ses distributions[2] se prête bien à un mode particulier de mise à jour différentielle (patch). Elle suppose que l'utilisateur dispose d'un accès en mode "console" sur le répertoire où est hébergé le wiki. Cette possibilité existe au R.A.S., mais pas chez la plupart des hébergeurs grand public... Dans ce dernier cas, il faut rappatrier l'intégralité des répertoires (à l'exception de data) sur un ordi linux où l'on pourra appliquer le patch, les effacer sur le serveur et les télédéposer depuis l'ordi.

La marche à suivre est expliquée en détail sur la page du manuel d'installation (en). Pour mémoire, elle se décompose en 4 temps :

  1. Télécharger et décompresser la nouvelle version (vierge de toute adaptation)

  2. Télécharger et décompresser une copie vierge de la version actuellement utilisée

  3. Calculer la différence entre les deux versions vierges

  4. Appliquer les changements calculés au répertoire en cours d'exploitation.

3. Exemple au R.A.S.

L'installation au R.A.S. est presque plug & play. Une fois que vous avez fait les adaptations indiquées au chapitre précédent, il n'y a plus qu'à télédéposer le répertoire dokuwiki dans l'espace web de l'association. Ce répertoire peut être placé n'importe où, par obligatoire à la racine ce l'espace web.

L'unique problème à régler vient des droits d'écriture sur les fichiers. Le problème vous sera signalé lorsque vous tenterez d'aller sur le wiki. Pour régler ce problème, le plus simple est d'utiliser votre logiciel de télédépôt (ftp) et de modifier les droits sur les fichiers.

Pour la mise à jour, on ne pourra pas télécharger directement les versions vierges sur le site du R.A.S.[3] On devra donc télécharger les archives sur son poste de travail avant de pouvoir les télédéposer sur le serveur du R.A.S., où on les décompressera. Je suggère d'organiser les fichiers comme suit ("racine" désigne le répertoire racine de l'espace web de l'association /www/mon-asso) :

racine
     doku-upgrade
          nouvelle-version-répertoire
          ancienne-version_vierge-répertoire
          nouvelle-version-archive
          ancienne-version_vierge-archive
          doku.dist
     dokuwiki-en-exploitation

4. Exemple sur Free.fr

4.1. Installation

Compte tenu des restriction apportées par Free à PHP, dokuwiki ne peut être installé tel quel chez cet hébergeur. Pour l'avant-dernière version stable (dokuwiki-2008-05-05), un patch existe. En récupérant le patch sur le site de son auteur et lisant attentivement les indications fournies sur le forum de dokuwiki, on obtient assez facilement une version compatible avec Free et totalement fonctionnelle.

Note

Les serveurs de FTP personnel de Free étant un peu tatillons, j'ai constaté que l'utilisation de Filezilla, pour télédéposer, évitait bien des blocages (mais pas tous).

L'environnement dokuwiki a été installé dans le répertoire nommé dokuwiki, placé à la racine du site Web. Par rapport à l'installation standard décrite dans le manuel, l'installation sur Free à soulevé deux problèmes facilement résolus.

  • À la racine du site - donc en dehors de l'espace de dokuwiki - il faut créer un répertoire vide dénommé sessions.

  • À la racine du site, également, dans le fichier ".htaccess", il faut ajouter une ligne contenant le texte "php 1". Si ce fichier n'existe, il suffit de le créer.

4.2. Mise à jour

La mise à jour ne pouvant se faire qu'en ftp, la technique des diff n'est pas applicable. On procède alors par copie-écrasement des anciens fichiers par les nouveaux :

  1. Profiter de la mise à jour pour faire une sauvegarde du site

  2. Télécharger l'archive de nouvelle version et l'expanser localement

  3. Télédéposer l'intégalité de la nouvelle version sur l'ancienne version

  4. Télécharger l'archive de patch pour Free

  5. L'expanser localement

  6. Négliger le diff et télédéposer l'intégralité des dossiers patchés (les seuls à être présents)

A. Navigateur conseillés

L'exploitation complète des fonctionnalités de Dokuwiki ne sera possible que si l'utilisatrice dispose de l'un des navigateurs suivants, configuré de manière à autoriser les cookies et le code javascript :

  • Firefox en version 1.0.4 ou supérieure,

  • Internet Explorer 6 (il semble y avoir des problèmes pour l'accès authentifié)

  • Opera 8.0,

  • Konqeror 3.3.2,

  • Safari.

Il ne faut cependant pas perdre de vue que les fonctionnalités réellement mises à disposition de l'utilisatrice finale dépendent de plusieurs facteurs : la version de Dokuwiki, la compatibilité de l'hébergement du serveur, la configuration de dokuwiki et le navigateur de l'internaute. Si elle dispose d'un poste de travail personnel, l'utilisatrice peut facilement choisir le navigateur qu'elle utilise. Si elle ne dispose que d'un ordinateur mis à sa disposition (même exclusive) sans en posséder les droits d'administration, elle peut éventuellement faire une demande d'installation d'un navigateur particulier, sur "son" ordi, auprès de l'autorité compétente. Elle peut également demander à l'administratrice du Dokuwiki sur lequel elle travaille d'en modifier la configuration, afin de rendre certaines fonctionnalités disponibles.

B. Gestion des droits

Dokuwiki permet de créer un système de droits afin de contrôler qui peut (ou non) voir, modifier, effacer toutes ou certaines pages, télédéposer des textes, des images, etc. Ces droits peuvent se combiner avec les contrôles d'accès permis par le logiciel de serveur Web "Apache" (htaccess), sur lequel s'appuie Dokuwiki.

Si l'on souhaite mettre en place un environnement privé d'écriture coopérative égalitaire, il est probablement plus simple de gérer les droits par htaccess[4]. Les détails sont alors ajustés socialement, au sein du groupe de travail. Si htaccess n'évoque rien pour vous ou si vous désirez créer un environnement ouvert, avec une gestion technique fine des droits, vous devrez alors vous plonger dans la logique des ACL[5] de Dokuwiki.

Note

À la date d'aujourd'hui (janvier 2006), l'interface de gestions de droits et des utilisateurs est rudimentaire voir expérimentale. Les développements en la matière étant intenses, cette situation pourrait rapidement évoluer.

La gestion des droits manipule les notions suivantes :

  • utilisateur :une utilisatrice déclarée du système

  • groupe : un groupe identifié d'utilisatrices (groupe est une propriété d'un utilisateur)

  • page : une page du wiki

  • catégorie : une section ou sous-section du wiki (un espace de nommage ou namespace)

Le plus simple est de laisser les utilisatrices se déclarer elles-mêmes, via l'interface de déclaration. Pour un wiki privé, l'administratrice peut se substituer à toutes les utilisatrices et les déclarer, en simulant autant d'actions de déclaration individuelle que nécessaire. Charge à elle, ensuite, d'informer les utilisatrices de leurs identifiants et mots de passe.

Note

L'administratrice peut également installer une extension de Dokuwiki (plugin) dédiée à la gestion des utilisatrices. La liste des extensions disponibles se trouve sur la page des plugins. Un plugin s'installe tout bêtement en télédéposant l'archive décompressée du plugin dans le répertoire docuwiki/lib/publings.

Une fois les utilisatrices déclarées l'administratrice peut leur attribuer des droits, à travers l'interface d'administration des ACL. Il peut être utile de savoir que les utilisatrices déclarées font, par défaut, partie du groupe[6] user[7]. On peut donc leur affecter, globalement, des droits sur certaines pages ou certaines catégories.

Les catégories sont reconnues par leur nom. Il est possible de définir des droits sur des catégories pour lesquelles aucun contenu n'a encore été produit. On peut donc organiser préventivement les droits d'accès sur les sections anticipée du wiki. Il suffira que les sections, lorsqu'elles seront créées, reprennent les noms indiqués dans les ACL.

C. Liens

Le site de téléchargement

Le "guide" d'installation.

Le manuel pour utilisatrices débutantes et avancées

Le fichier de configuration expliqué.

La gestion des droits (ACL)

La FAQ

Les extensions (plugin)



[1] Les choix délibérés et les orientations retenues n'étant pas, à proprement parler, des faiblesses.

[2] Les archives compactées contenant les versions installables.

[3] Comme le suggère pourtant le manuel d'installation...

[4] htaccess n'est pas librement utilisable chez tous les hébergeur, même s'ils utilisent Apache.

[5] Access Control Lists

[6] À part quelques groupes prédéfinis, c'est l'administratrice qui créé le groupe, le plus simplement du monde, en affectant un ou plusieurs groupes à une utilisatrice. Il n'y a donc pas d'interface spécifique à la gestion des groupes.

[7] Au singulier, et non users, comme indiqué dans la documentation en ligne. Une confusion classique entre texte et meta-texte ;-)

Voir en ligne : L’article original