Dokuwiki - Installation d'un outil de documentation collaborative
Création — Nicolas THOREZ 2020/07/13 16:04
Dokuwiki est un logiciel permettant de créer un wiki, à savoir, une documentation collaborative. Ce type d'outil est indispensable en entreprise afin de mettre en commun des informations, des proccédures, etc… Un des avantages de Dokuwiki est son absence de base de données, le rendant par conséquent plus léger et moins gourmand que d'autres produits de ce type. Il possède aussi une large variété de plugins lui permettant de s'adapter à de très nombreuses situation.
Un œil avisé remarquera que ce site n'est autre qu'un dokuwiki.
Environnement
Cette procédure a été réalisée et testée sur une Debian 10.Droits
Cette procédure nécessite des droitsroot. Par conséquent, faîtes tgrès attention à ce que vous faîtes.Préparation du serveur
- Comme toujours, on commence par mettre à jour nos dépôts :
apt update
- On installe les paquets nécessaires :
apt install -y wget bash-completion zip unzip curl imagemagick apache2 libapache2-mod-php7.3 php7.3 php7.3-curl php7.3-gd php7.3-opcache php7.3-json php7.3-mbstring php7.3-intl php-imagick php7.3-xml
- On ouvre le pare-feu au niveau des ports 80 et/ou 443 (selon votre exigences de sécurité). Je vous laisse vous rapprocher de votre solution de sécurité pour les commandes adéquates.
- On active le module
apache2de réécriture d'URL :
a2enmod rewrite
- Si vous souhaitez communiquer en SSL, alors il faut aussi activer le module SSL de
apache2:
a2enmod ssl
- Il faut maintenant préparer la configuration
apache2. Si votre serveur ne doit héberger quedokuwiki, alors on peut modifier directement les fichiers de configurations par défaut,000-default.confetdefault-ssl.conf. Dans le cas contraire, il est préférable de créer un fichier de configuration spécifique :
nano /etc/apache2/sites-available/dokuwiki.conf
- Par défaut, le fichier de configuration
apache2doit ressembler à ça :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<Directory /var/www/html>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<Directory /var/www/html>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
</IfModule>
- On active le site :
a2ensite dokuwiki.conf
- Pour plus d'efficacité, on va aussi paramétrer le php. On commence par sauvegarder la configuration existante (on sait jamais) :
cp /etc/php/7.3/apache2/php.ini{,.bkp}
- On édite le fichier de configuration du php :
nano /etc/php/7.3/apache2/php.ini
- On cherche et on modifie (au besoin) les lignes suivantes :
- file_uploads : la valeur doit être
On. - default_charset : La valeur doit être
UTF-8. - memory_limit : La valeur doit être
128M. - max_execution_time : La valeur doit être
300. - upload_max_filesize : La valeur doit être
100M. - short_open_tag : La valeur doit être
Off. - output_buffering : La valeur doit être
Off. - output_handler : Aucune valeur, juste décommenté.
- zlib.output_compression : La valeur doit être
Off. - implicit_flush : La valeur doit être
Off. - max_input_time : La valeur doit être
60. - max_input_vars : La valeur doit être
10000. - error_reporting : La valeur doit être
E_ALL & ~E_NOTICE. - display_startup_errors : La valeur doit être
Off. - log_errors : La valeur doit être
Off. - variables_order : La valeur doit être
EGPCS. - register_argc_argv : La valeur doit être
Off. - session.use_cookies : La valeur doit être
1. - date.timezone : La valeur doit être
Europe/Parissi vous êtes en France sinon indiquez votre fuseau horaire.
- A ce stade, il nous reste plus qu'à redémarrer ler serveur
apache2:
systemctl restart apache2
Installation du site
- On se place dans un dossier de travail et on récupère la dernière version satble de
Dokuwiki. A l'heure où j'écris ces lignes, il s'agit de la version2018-04-22c. On peut d'ailleurs retrouver les liens de chaques versions sur le site Dokuwiki :
cd /tmp wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
- on décompresse l'archive :
tar xzvf dokuwiki-stable.tgz
- Si on souhaite mettre le site directement à la racine du serveur web, dans le cas où il n'y aurai que
Dokuwikisur ce serveur, il faut supprimer la page par défaut deapache2:
rm -f /var/www/html/index.html
- On se positionne dans le dossier contenant les fichiers de l'archive décompressée :
cd dokuwiki-2018-04-22c/
- On copie l'intégralité des fichiers dans le dossier de destination :
cp -rf ./* /var/www/html/ cp .htaccess.dist /var/www/html/
- On applique les bons droits aux fichiers :
chown -R www-data:www-data /var/www/html/
- On peut désormais se connecter à la configuration de notre wiki à l'adresse http://mon.wiki.local/install.php, en remplaçant bien sûr
mon.wiki.localpar leFQDNou l'adresse IP de votre serveur.
Post-installation
- On se connecte à l'adresse http://mon.wiki.local/install.php :

- On mofifie les différents champs :
- On pourra ici choisir la langue par défaut du wiki et de l'installateur. Le rafraîchissement est normalement automatique mais dans le cas contraire, un pression sur
Updaterésoud le problème. - On renseignera ici :
- Le nom du wiki. Par exemple : "Wiki de la société", "Documentation du service technique", …
- Le login de l'administrateur.
- Le nom de l'administrateur.
- Le mot de passe de l'administrateur ainsi que sa confirmation.
- Le type de wiki. Attention à ce choix, il entraîne des comportements très spécifiques selon qu'il soit ouvert, public ou fermé.
- Selon le type de wiki, on pourra (ou pas) permettre aux utilisateurs de créer leur propre compte.
- On peut choisir le type de licences par défaut pour le contenu. Les licences proposées sont toutes pour de l'open-source ce qui ne convient pas forcément dans le cadre d'une société. Du coup, attention là aussi à votre choix.
- A la fin, on n'oublie pas d'enregistrer.
- Un fois la configuration enregistrée, on peut supprimer le fichier d'installation :
rm -f /var/www/html/install.php
- Vous pouvez désormais vous connecter à votre wiki à l'adresse http://mon.wiki.local/doku.php :

Discussion