DokuWiki est un wiki simple et standard principalement destiné à la création de documents de toute nature. Il est destiné aux équipes de développeurs, groupes de travail ou petites entreprises. Il dispose d'une syntaxe simple mais puissante qui fait que les fichiers de données restent lisibles en dehors du Wiki, et facilite la création de textes structurés. Toutes les données sont stockées dans des fichiers texte, aucune base de données n'est nécessaire.
Il faut installer le plugin Dokuwiki disponible sur la page de téléchargement. Ce plugin utilise la variable d'environnement REMOTE_USER
pour récupérer le nom d'utilisateur connecté.
Télécharger le plugin et le copier dans le répertoire dokuwiki inc/auth/
:
cp lemonldap.class.php inc/auth/ cp lemonldapuserdatabackend.class.php inc/auth/
Éditer la configuration locale Dokuwiki (conf/local.php
) et indiquer lemonldap
comme type d'authentification :
$conf[authtype] = lemonldap;
Configurer l'hôte virtuel Dokuwiki comme n'importe quel autre hôte virtuel protégé.
<VirtualHost *:80> ServerName dokuwiki.example.com PerlHeaderParserHandler Lemonldap::NG::Handler ... </VirtualHost>
server { listen 80; server_name dokuwiki.example.com; root /path/to/application; # Requête interne d'authentification location = /lmauth { internal; include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/llng-fastcgi-server/llng-fastcgi.sock; # Ignorer les données postées fastcgi_pass_request_body off; fastcgi_param CONTENT_LENGTH ""; # Conserver le nom d'hôte original fastcgi_param HOST $http_host; # Conserver la requête originale (le serveur LLNG va recevoir /llauth) fastcgi_param X_ORIGINAL_URI $request_uri; } # Requêtes clients location / { auth_request /lmauth; auth_request_set $lmremote_user $upstream_http_lm_remote_user; auth_request_set $lmlocation $upstream_http_location; error_page 401 $lmlocation; try_files $uri $uri/ =404; ... include /etc/lemonldap-ng/nginx-lua-headers.conf; } location / { try_files $uri $uri/ =404; } }
Aller dans le manager et créer un nouvel hôte virtuel pour Dokuwiki.
Configurer simplement la règle d'accès.
Si LL::NG est utilisé par reverse-proxy, configurer l'en-tête Auth-User
, aucun autre en-tête n'est utile.