DokuWiki est un logiciel wiki Open Source simple à utiliser et très polyvalent qui ne nécessite pas de base de données. Il est apprécié des utilisateurs pour sa syntaxe propre et lisible. La facilité de maintenance, de sauvegarde et d'intégration en fait le favori des administrateurs. Les contrôles d'accès intégrés et les connecteurs d'authentification rendent DokuWiki particulièrement utile dans le contexte de l'entreprise et un grand nombre de plugins apportés par sa communauté dynamique permettent un large éventail de cas d'utilisation au-delà d'un wiki traditionnel. Ce tutoriel vous montrera comment installer DokuWiki sur un nouveau serveur CentOS 8.
Exigences
Assurez-vous que votre serveur répond aux exigences suivantes.
- Logiciel de serveur Web prenant en charge PHP (Apache, NGINX, IIS, Lighttpd, LiteSpeed)
- PHP version 5.6 ou ultérieure, les versions plus récentes sont fortement recommandées.
Prérequis
- Un système d'exploitation CentOS 8
- Un utilisateur non root avec
sudo
privilèges.
Étapes initiales
Vérifiez votre version de CentOS :
cat /etc/centos-release
# CentOS Linux release 8.0.1905 (Core)
Configurez le fuseau horaire :
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Mettez à jour les packages de votre système d'exploitation (logiciels). Il s'agit d'une première étape importante car elle garantit que vous disposez des dernières mises à jour et correctifs de sécurité pour les packages logiciels par défaut de votre système d'exploitation :
sudo dnf update -y
Installez certains packages essentiels nécessaires à l'administration de base du système d'exploitation CentOS :
sudo dnf install -y curl wget vim git unzip socat bash-completion epel-release
Étape 1 - Installer PHP et les extensions PHP
Installez PHP et les extensions PHP requises :
sudo dnf install -y php php-cli php-fpm php-gd php-xml php-zip
Pour afficher PHP compilé en modules, vous pouvez exécuter :
php -m
ctype
curl
exif
fileinfo
. . .
. . .
Vérifiez la version de PHP :
php --version
# PHP 7.2.11-1-(cli) (built: Oct 26 2019 14:14:18) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.11-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies
Démarrez et activez le service PHP-FPM :
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
Étape 2 - Installez le client acme.sh et obtenez le certificat Let's Encrypt (facultatif)
Sécuriser votre site avec HTTPS n'est pas nécessaire, mais c'est une bonne pratique pour sécuriser le trafic de votre site. Pour obtenir un certificat TLS de Let's Encrypt, nous utiliserons le client acme.sh. Acme.sh est un logiciel shell UNIX simple permettant d'obtenir des certificats TLS de Let's Encrypt sans aucune dépendance.
Téléchargez et installez acme.sh :
sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~
Vérifier la version d'acme.sh :
acme.sh --version
# v2.8.2
Obtenir RSA et ECC/ECDSA certificats pour votre domaine/nom d'hôte :
# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256
Si vous voulez de faux certificats pour les tests, vous pouvez ajouter --staging
drapeau aux commandes ci-dessus.
Après avoir exécuté les commandes ci-dessus, vos certificats et clés sera dans :
- Pour RSA :
/home/username/example.com
répertoire. - Pour ECC/ECDSA :
/home/username/example.com_ecc
répertoire.
Pour répertorier vos certificats émis, vous pouvez exécuter :
acme.sh --list
Créez un répertoire pour stocker vos certificats. Nous utiliserons le /etc/letsencrypt
répertoire.
mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc
Installez/copiez les certificats dans le répertoire /etc/letsencrypt.
# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
Tous les certificats seront automatiquement renouvelés tous les 60 jours.
Après avoir obtenu les certificats, quittez l'utilisateur root et revenez à l'utilisateur sudo normal :
exit
Étape 3 - Installer et configurer Nginx
DokuWiki fonctionnera sur n'importe quel serveur Web prenant en charge PHP. Dans ce tutoriel, nous utiliserons Nginx. Si vous préférez Apache ou un autre serveur Web, vous pouvez l'utiliser à la place de Nginx.
Téléchargez et installez NGINX à partir du référentiel CentOS :
sudo dnf install -y nginx
Vérifiez la version de Nginx :
sudo nginx -v
# nginx version: nginx/1.14.2
Configurer Nginx :
sudo vim /etc/nginx/conf.d/dokuwiki.conf
Copiez/collez la configuration Nginx suivante et enregistrez-la :
server {
listen [::]:443 ssl;
listen 443 ssl;
listen [::]:80;
listen 80;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name wiki.example.com;
root /var/www/dokuwiki;
index index.html index.htm index.php doku.php;
client_max_body_size 15M;
client_body_buffer_size 128K;
location / {
try_files $uri $uri/ @dokuwiki;
}
location ^~ /conf/ { return 403; }
location ^~ /data/ { return 403; }
location ~ /\.ht { deny all; }
location @dokuwiki {
rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last;
rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last;
rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last;
rewrite ^/(.*) /doku.php?id=$1 last;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Vérifiez la configuration de Nginx :
sudo nginx -t
Recharger Nginx :
sudo systemctl reload nginx.service
Étape 4 - Installer DokuWiki
Créez un répertoire racine de document :
sudo mkdir -p /var/www/dokuwiki
Accédez à la racine du document :
cd /var/www/dokuwiki
Téléchargez la dernière version stable de DokuWiki depuis la page de téléchargement de DokuWiki :
sudo wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
Décompressez l'archive DokuWiki :
sudo tar xvf dokuwiki-stable.tgz
sudo rm dokuwiki-stable.tgz
sudo mv dokuwiki-2018-04-22b/* . && mv dokuwiki-2018-04-22b/.* .
sudo rmdir dokuwiki-2018-04-22b/
Changer la propriété du /var/www/dokuwiki
répertoire vers www-data:
sudo chown -R nginx:nginx /var/www/dokuwiki
Exécutez sudo vim /etc/php-fpm.d/www.conf
et définissez l'utilisateur et le groupe sur nginx
. Initialement, il sera défini sur l'utilisateur et le groupe apache
.
sudo vim /etc/php-fpm.d/www.conf
Redémarrez php7.3-fpm.service:
sudo systemctl restart php7.3-fpm.service
Ouvrez le script d'installation de DokuWiki, install.php
, dans votre navigateur et configurez DokuWiki. Le script d'installation vérifie la disponibilité des fonctions PHP requises et vérifie les autorisations de fichiers nécessaires. Il crée également un compte administrateur initial et une stratégie ACL initiale. Pour exécuter le programme d'installation, ouvrez http://wiki.example.com/install.php
dans le navigateur et suivez les instructions.
Étape 5 - Accéder à l'interface Web de DokuWiki
Ouvrez votre navigateur Web et saisissez l'URL http://example.com/install.php. Vous serez redirigé vers la page suivante :
Fournissez toutes les informations requises telles que le nom du superutilisateur, l'e-mail, le mot de passe. Cliquez ensuite sur Enregistrer bouton. Une fois l'installation terminée avec succès, vous devriez voir la page suivante :
Maintenant, cliquez sur votre nouveau DokuWiki . Vous devriez voir la page suivante :
Maintenant, cliquez sur connexion bouton. Vous serez redirigé vers la page suivante :
Maintenant, fournissez votre nom d'utilisateur et votre mot de passe d'administrateur. Ensuite, cliquez sur le Journal Dans bouton. Vous devriez voir le tableau de bord DokuWiki sur la page suivante :
Après une configuration réussie, supprimez le install.php
fichier depuis le répertoire racine de DokuWiki :
sudo rm /var/www/dokuwiki/install.php
Toutes nos félicitations! Vous avez installé et configuré avec succès DokuWiki sur le serveur CentOS 8. Vous pouvez désormais créer facilement votre propre site wiki à l'aide de DokuWiki.
Liens
- https://www.dokuwiki.org/
- https://github.com/splitbrain/dokuwiki