Textpattern est un système de gestion de contenu PHP gratuit et open-source. Il est plutôt léger, rapide et facile à utiliser tout en offrant une personnalisation décente via des thèmes et des plugins. Dans ce guide, nous allons installer Textpattern sur une nouvelle instance Debian 10.
Exigences
- Un nouveau système Debian 10 sur lequel vous avez accès à l'utilisateur root ou à tout utilisateur disposant des privilèges sudo.
- Un nom de domaine enregistré pointant vers votre serveur.
Si vous êtes connecté en tant qu'utilisateur sudo, passez à root pour cette configuration :
sudo su -
Définissez la variable d'environnement $VISUAL sur un éditeur de texte de votre choix. Par exemple, pour utiliser nano :
echo "export VISUAL=nano" >> ~/.profile . ~/.profile
Étape 1 :Installation du logiciel requis.
Mettez à jour le cache de packages sur votre système :
apt update
Installez ensuite Nginx, PHP-FPM, les extensions PHP requises, MariaDB et certbot :
apt install -y nginx mariadb-server php-fpm php-xml php-mysql php-json php-mbstring php-zip certbot
Assurez-vous que les services Nginx et MariaDB sont activés et en cours d'exécution :
systemctl enable --now nginx.service mariadb.service
Étape 2 : Téléchargement du modèle de texte
Copiez le lien de téléchargement (au format .tar.gz) de la dernière version de textpattern à partir de leurs versions sur Github et téléchargez-le sur votre serveur avec wget comme suit :
wget https://github.com/textpattern/textpattern/releases/download/4.7.3/textpattern-4.7.3.tar.gz
Ensuite, décompressez l'archive et déplacez le contenu vers un emplacement à l'intérieur du répertoire webroot :
tar -xzf textpattern*.tar.gz rm textpattern*.tar.gz mv textpattern* /var/www/html/textpattern
Étape 3 :Configuration de la base de données
Commencez par exécuter le script mysql_secure_installation pour effectuer des améliorations de sécurité de base :
mysql_secure_installation
Répondez aux questions comme indiqué ci-dessous et assurez-vous de choisir un mot de passe sécurisé pour l'utilisateur racine :
Enter current password for root (enter for none):Set root password? [Y/n] y New password: your_password Re-enter new password: your_password Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
Ensuite, nous allons créer une base de données et un utilisateur à utiliser par Textpattern. Connectez-vous au shell MySQL avec :
mysql -u root -p
Entrez votre mot de passe root, puis émettez les instructions suivantes. Assurez-vous de remplacer textpattern_user_password par un mot de passe approprié.
MariaDB [(none)]> CREATE DATABASE textpattern_db; MariaDB [(none)]> CREATE USER textpattern_user IDENTIFIED BY 'textpattern_user_password'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON textpattern_db.* TO textpattern_user; MariaDB [(none)]> \q
Étape 4 :Configuration de Nginx
Commencez par obtenir un certificat SSL pour votre domaine en exécutant la commande suivante :
certbot certonly --webroot --webroot-path /var/www/html -d "your_domain" -m "[email protected]"
En supposant que votre domaine est correctement configuré, certbot obtiendra automatiquement un certificat que nous utiliserons pour configurer HTTPS.
Ensuite, désactivez le fichier de configuration du serveur Nginx par défaut :
rm /etc/nginx/sites-enabled/default
Ouvrez ensuite un nouveau fichier de configuration sous /etc/nginx/sites-available :
$VISUAL /etc/nginx/sites-available/textpattern
Et entrez la configuration sensée suivante, en remplaçant votre_domaine par votre nom de domaine :
server { listen 80; #replace your_domain below server_name your_domain; return 301 https://$server_name$request_uri; } server { listen 443 ssl; #replace your_domain below server_name your_domain; root /var/www/html/textpattern; index index.php; ssl on; #replace your_domain below ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem; location ~* \.php$ { fastcgi_pass unix:/run/php/php7.3-fpm.sock; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; } }
Notez que cette configuration redirigera toutes les requêtes HTTP vers HTTPS. Vous voudrez peut-être le modifier si vous avez des préférences ou des exigences spécifiques. Une fois que vous en êtes satisfait, créez un lien symbolique dans le répertoire sites-enabled :
ln -s /etc/nginx/sites-available/textpattern /etc/nginx/sites-enabled/
Vérifiez ensuite les éventuelles erreurs de syntaxe avec :
nginx -t
Enfin, lancez la commande suivante pour charger la nouvelle configuration :
systemctl reload nginx.service
Étape 5 :Configuration du modèle de texte
Votre installation Textpattern devrait maintenant être accessible mais n'est pas encore configurée. Accédez à https://votre_domaine/textpattern/setup/ pour démarrer le programme d'installation Web. Après avoir choisi une langue, entrez les détails de la base de données :
- Nom d'utilisateur MySQL :textpattern_user
- Mot de passe MySQL :saisissez le mot de passe choisi pour textpattern_user lors de l'étape 2.
- Serveur MySQL :hôte local
- Base de données MySQL :textpattern_db
- Préfixe du tableau :laisser vide
Le programme d'installation vérifiera les informations d'identification de la base de données saisies avant de générer la configuration correspondante. Créez le fichier requis :
$VISUAL /var/www/html/textpattern/textpattern/config.php
Collez la configuration générée, enregistrez le fichier et quittez. Passez à l'étape suivante du programme d'installation Web, où il vous sera demandé de saisir des informations pour le compte administrateur CMS et la configuration du site. Une fois cela fait, supprimez le répertoire d'installation :
rm -rf /var/www/html/textpattern/textpattern/setup
Et donnez à l'utilisateur du système Nginx la propriété des répertoires auxquels Textpattern a besoin d'un accès en écriture :
chown -R www-data /var/www/html/textpattern/{files,images,themes}
Votre site Textpattern est maintenant prêt à être utilisé. L'interface d'administration est accessible à l'adresse https://votre_domaine/textpattern.
Plus d'informations
- Découvrez comment gérer vos certificats avec certbot dans ce guide