Dans ce tutoriel, vous voyez les étapes à suivre pour installer et configurer LEMP sur Debian 12. Nginx, MariaDB et PHP sont les logiciels nécessaires pour un hébergement Web performant, que ce soit pour des sites vitrines, des blogs ou des boutiques en ligne.
contenu
LEMP signifie Linux, Nginx, MySQL/MariaDB, PHP et constitue la base de nombreux projets et applications Web à travers le monde. D’ailleurs, vous ne pourriez pas voir cet article si derrière Stealthsettings.com il n’y avait pas tous ces packages qui assurent le fonctionnement en ligne de notre site Internet.
Debian est un système d'exploitation open source basé sur Linux réputé pour sa stabilité, sa sécurité et sa flexibilité. Avec une longue histoire et une communauté de développeurs active, Debian propose une large gamme de packages logiciels et de bibliothèques pour répondre aux divers besoins des utilisateurs. Ce système d'exploitation est fréquemment utilisé pour créer des serveurs fiables et efficaces pour les entreprises, mais il peut également être adapté pour un usage personnel.
Comment installer et configurer lemp sur Debian 12
La première étape à faire avant d'installer et de configurer LEMP sur Debian 12, est de vous connecter au serveur via SSH (ou directement depuis la console si vous avez un accès local). Assurez-vous qu'aucun package LEMP ou système d'administration tel que : cPanel, VestaCP ou autres n'est déjà installé sur le serveur.
L'ensemble des commandes de ce didacticiel commence par “sudo“, mais si vous êtes connecté au serveur avec l'utilisateur “root“, ce n'est pas nécessaire “sudo” devant la ligne de commande. Commande “sudo” est utilisé devant les lignes de commande pour accorder temporairement des autorisations de superutilisateur à un utilisateur ordinaire, lui permettant d'exécuter des commandes nécessitant des privilèges spéciaux ou un accès à des ressources protégées, telles que l'installation ou la configuration de logiciels, l'administration du système ou l'exécution d'autres opérations sensibles.
Mettre à jour le logiciel.
Avant de commencer l'installation de LAMP, il est recommandé de mettre à jour le système d'exploitation et les progiciels déjà installés.
sudo apt update
sudo apt upgrade
Si des packages sont disponibles pour la mise à jour, appuyez sur “Y” lorsqu'on lui demande :
Do you want to continue? [Y/n] Y
Installation et configuration du serveur Web Nginx sur Debian 12
Pour que le serveur Web puisse proposer des pages Web aux visiteurs, Nginx Web Server il doit être installé et configuré correctement.
sudo apt install nginx
dactylographie “Y” pour confirmer l'installation de Nginx Web Server.
Do you want to continue? [Y/n] Y

Les lignes à la fin du processus d'installation devraient ressembler à ceci :
Setting up nginx-common (1.22.1-9) ...
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /lib/systemd/system/nginx.service.
Setting up nginx (1.22.1-9) ...
Upgrading binary: nginx.
Processing triggers for man-db (2.11.2-2) ...
Enfin, pour vous assurer que tout fonctionne correctement, rendez-vous à l'adresse IP dans un navigateur Web. http://your_server_ip.

Le service Nginx est opérationnel sur votre serveur et prêt à servir des pages Web.
Liens :
Installation et configuration du serveur MariaDB sur Debian 12
MariaDB offre des performances améliorées, des vitesses de réplication plus rapides, des mesures de sécurité accrues et des moteurs de stockage supplémentaires par rapport à MySQL.
Exécutez la ligne de commande ci-dessous et tapez “Y” pour confirmer l'installation MariaDB Server.
sudo apt install mariadb-server
Après l'installation, vous devez sécuriser MariaDB Server en exécutant le script : mysql_secure_installation. Cela restreindra l'accès au serveur et supprimera les comptes inutilisés.
Exécutez la ligne de commande :
sudo mysql_secure_installation
pressé “Enter” pour le mot de passe actuel de l'utilisateur “root“.

Switch to unix_socket authentication [Y/n] Y
Définir le mot de passe pour MariaDB:
Change the root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
Ensuite, vous supprimerez les privilèges et les bases de données définis par défaut lors de l'installation MariaDB Server.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Le mot de passe défini ci-dessus pour le compte “root” est requis lorsque vous vous connectez au serveur distant. Télécommande. C'est le mot de passe pour MariaDB.
Testez votre installation SQL Server.
root@mars:~# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 41
Server version: 10.11.3-MariaDB-1 Debian 12
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> select version();
+-------------------+
| version() |
+-------------------+
| 10.11.3-MariaDB-1 |
+-------------------+
1 row in set (0.000 sec)
MariaDB [(none)]> quit
Bye
root@mars:~#
Installer et configurer PHP/PHP-FPM sur Debian 12
Si tout a bien fonctionné jusqu'à cette étape, pour installer et configurer LEMP sur Debian 12, vous avez également besoin du logiciel PHP. Pour la prise en charge de PHP dans Nginx, vous devez également installer PHP-FPM.
sudo apt install php-fpm php-mysql php-gd php-cli php-curl php-mbstring php-zip php-opcache php-xml
Attendez la fin du processus d'installation PHP-FPM, ainsi que les modules PHP les plus importants.
Au final, dans mon tutoriel j'ai pu installer PHP 8.2 sur le système d'exploitation Debian 12.
root@mars:~# php -v
PHP 8.2.7 (cli) (built: Jun 9 2023 19:37:27) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
root@mars:~#
À ce stade, tous les éléments de LEMP ont été installés, mais il reste encore quelques configurations à effectuer. Nginx pour exécuter des fichiers PHP.
Configuration de NGINX pour exécuter des fichiers PHP
Pour configurer Nginx pour la page “défaut”, modifier “/etc/nginx/sites-enabled/default“. Je préfère “nano” pour l'édition.
Remplacer dans “location /” doubler:
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
Avec la ligne :
location / {
try_files $uri $uri/ /index.php?$args;
}
Ensuite, ajoutez les lignes ci-dessous au bloc “server” pour permettre à Nginx de traiter PHP.
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php-fpm.sock;
}
}

Enregistrez le fichier et vérifiez la configuration :
root@mars:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
root@mars:~#
Si le test de configuration réussit, redémarrez le service nginx.
sudo systemctl restart nginx
Testez si vous avez installé et configuré avec succès LEMP sur Debian 12
Après avoir installé et configuré Nginx, MariaDB et PHP sur Debian 12 (LEMP), il est temps de tester si tout fonctionne. Pour tester, le plus simple est de créer un fichier info.php.
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
Accès dans le navigateur “https://your_server_ip/info.php“.

La page PHP signifie que vous avez installé avec succès LEMP pour Debian 12.
Félicitations!