GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer DokuWiki avec Nginx et chiffrer SSL sur CentOS 8

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.

  • https://www.dokuwiki.org/
  • https://github.com/splitbrain/dokuwiki

Cent OS
  1. Comment installer Nextcloud avec Nginx et PHP 7.3 sur CentOS 8

  2. Comment installer Nextcloud avec Nginx et Lets Encrypt SSL sur Ubuntu 20.04 LTS

  3. Comment installer Shopware avec NGINX et Lets Encrypt sur CentOS 7

  4. Comment installer Shopware avec NGINX et Lets Encrypt sur Fedora 30

  5. Comment installer WonderCMS avec Nginx et Lets Encrypt SSL sur CentOS 7

Comment installer Askbot avec Nginx et sécuriser avec Lets Encrypt sur CentOS 8

Comment installer Drupal 9 avec Nginx et Lets Encrypt SSL sur Debian 10

Comment installer Shopware 6 avec NGINX et Lets Encrypt sur CentOS 8

Comment installer PrestaShop avec Apache et Lets Encrypt SSL sur CentOS 8

Comment installer NEOS CMS avec Nginx et Lets Encrypt SSL sur Rocky Linux 8

Comment installer Let's Encrypt SSL avec Nginx sur CentOS 7