Installer la pile LAMP sur Debian 11

La pile LAMP est un ensemble commun d’outils open-source utilisés pour héberger des sites et des applications sur le Web. La pile LAMP est une plateforme de développement Web qui utilise Linux comme système d’exploitation, Apache comme serveur Web, MariaDB/MySQL comme serveur de base de données et PHP comme langage de script. Elle est très largement utilisée et fournit un ensemble de logiciels éprouvés pour créer des applications Web performantes.

Dans ce tutoriel, nous allons te montrer comment installer la pile LAMP sur Debian 11.

Conditions préalables

  • Un serveur fonctionnant sous Debian 11.
  • Un nom de domaine valide pointé avec l’IP de ton serveur.
  • Un mot de passe root est configuré sur le serveur.

Installer le serveur Web Apache

Le paquet du serveur Web Apache est inclus dans le référentiel par défaut de Debian 11. Tu peux l’installer en exécutant simplement la commande suivante :

apt-get install apache2 apache2-utils -y

Après avoir installé le serveur Web Apache, vérifie la version installée d’Apache avec la commande suivante :

apache2 -v

Tu devrais voir la sortie suivante :

Server version: Apache/2.4.48 (Debian)
Server built:   2021-08-12T11:51:47

Pour démarrer le service Apache, exécute la commande suivante :

systemctl start apache2

Pour activer le service Apache afin qu’il démarre au démarrage du système, exécute la commande suivante :

systemctl enable apache2

Tu peux aussi vérifier l’état complet d’Apache avec la commande suivante :

apt-get install elinks
apache2ctl fullstatus

Tu devrais voir la sortie suivante :

 Apache Server Status for localhost (via ::1)

   Server Version: Apache/2.4.48 (Debian)

   Server MPM: prefork

   Server Built: 2021-08-12T11:51:47

   --------------------------------------------------------------------------

   Current Time: Tuesday, 17-Aug-2021 09:29:41 UTC

   Restart Time: Tuesday, 17-Aug-2021 09:29:33 UTC

   Parent Server Config. Generation: 1

   Parent Server MPM Generation: 0

   Server uptime: 7 seconds

   Server load: 0.05 0.01 0.00

   Total accesses: 0 - Total Traffic: 0 kB - Total Duration: 0

   CPU Usage: u.03 s.02 cu0 cs0 - .714% CPU load

   0 requests/sec - 0 B/second

   1 requests currently being processed, 4 idle workers

Par défaut, Apache fonctionne sur le port 80, tu peux le vérifier à l’aide de la commande suivante :

ss -antpl | grep apache2

Tu devrais obtenir la sortie suivante :

LISTEN 0      511                *:80              *:*    users:(("apache2",pid=44022,fd=4),("apache2",pid=44021,fd=4),("apache2",pid=44020,fd=4),("apache2",pid=44019,fd=4),("apache2",pid=44018,fd=4),("apache2",pid=44017,fd=4))

Tu peux aussi vérifier l’installation d’Apache en naviguant sur l’URL http://your-server-ip. Tu devrais voir la page de test d’Apache sur l’écran suivant :

Page par défaut de Debian

Installer le serveur de bases de données MariaDB

MariaDB est un système de gestion de base de données qui est utilisé pour stocker et gérer les données de ton site Web. Tu peux l’installer à l’aide de la commande suivante :

apt-get install mariadb-server -y

Une fois que MariaDB est installé, démarre le service MariaDB et active-le pour qu’il démarre au démarrage du système à l’aide de la commande suivante :

systemctl start mariadb
systemctl enable mariadb

Tu peux aussi vérifier l’état du service MariaDB à l’aide de la commande suivante :

systemctl status mariadb

Tu devrais voir la sortie suivante :

? mariadb.service - MariaDB 10.3.31 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:25 UTC; 1min 36s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 1838 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 31 (limit: 2353)
     Memory: 66.1M
     CGroup: /system.slice/mariadb.service
             ??1838 /usr/sbin/mysqld

Il est également recommandé de sécuriser ton installation MariaDB et de définir un mot de passe root MariaDB. Tu peux exécuter le script mysql_secure_installation pour sécuriser l’installation de MariaDB :

mysql_secure_installation

Tu seras invité à définir un mot de passe root MariaDB, à supprimer les utilisateurs anonymes, à interdire la connexion root à distance et à supprimer la base de données de test, comme indiqué ci-dessous :

Enter current password for root (enter for none): 
Change the root password? [Y/n] Y
New password: 
Re-enter new 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

Par défaut, MariaDB fonctionne sur le port 3306. Tu peux le vérifier en utilisant la commande suivante :

ss -antpl | grep mariadb

Tu devrais voir la commande suivante :

LISTEN 0      80         127.0.0.1:3306      0.0.0.0:*    users:(("mariadbd",pid=12181,fd=15))

Pour te connecter au shell MariaDB, exécute la commande suivante :

mysql -u root -p

Indique ton mot de passe root MariaDB et appuie sur Entrée pour te connecter au shell MariaDB. Une fois que tu es connecté, tu devrais voir la sortie suivante :

Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 64
Server version: 10.5.11-MariaDB-1 Debian 11

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Maintenant, exécute la commande suivante pour vérifier la version de MariaDB :

MariaDB [(none)]> SELECT VERSION();

Tu devrais voir le résultat suivant :

+-------------------+
| VERSION()         |
+-------------------+
| 10.5.11-MariaDB-1 |
+-------------------+
1 row in set (0.001 sec)

Installer le langage de traitement PHP

PHP est le langage de traitement utilisé pour servir les applications PHP sur le serveur Web. Par défaut, la version de PHP disponible dans la Debian 11 est PHP 7.4. Tu peux installer PHP avec d’autres extensions couramment utilisées à l’aide de la commande suivante :

apt-get install php libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml -y

Une fois que PHP est installé, vérifie la version de PHP à l’aide de la commande suivante :

php -v

Tu devrais voir la sortie suivante :

PHP 7.4.21 (cli) (built: Jul  2 2021 03:59:48) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies

Créer un hôte virtuel pour Apache

À ce stade, la pile LAMP est installée sur ton serveur. Maintenant, tu vas devoir créer un fichier de configuration d’hôte virtuel Apache pour héberger n’importe quelle application.

Ici, nous allons créer un répertoire exemple.com pour héberger une page PHP. Tu peux le créer avec la commande suivante :

mkdir /var/www/html/example.com

Ensuite, définis la propriété du répertoire example.com sur www-data :

chown -R www-data:www-data /var/www/html/example.com

Ensuite, crée un fichier de configuration d’hôte virtuel Apache avec la commande suivante :

nano /etc/apache2/sites-available/example.com.conf

Ajoute les lignes suivantes :

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName example.com
    DocumentRoot /var/www/html/example.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Enregistre et ferme le fichier puis active l’hôte virtuel exemple.com et désactive l’hôte virtuel par défaut avec la commande suivante :

a2ensite example.com.conf
a2dissite 000-default

Ensuite, vérifie que le fichier d’hôte virtuel ne contient pas d’erreur de syntaxe avec la commande suivante :

apache2ctl configtest

Si tout va bien, tu devrais voir le résultat suivant :

Syntax OK

Enfin, redémarre le service Apache pour appliquer les changements de configuration :

systemctl reload apache2

Tu peux aussi vérifier l’état du service Apache à l’aide de la commande suivante :

systemctl status apache2

Tu devrais voir le résultat suivant :

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:30 UTC; 2min 56s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 2257 (apache2)
      Tasks: 55 (limit: 2353)
     Memory: 5.3M
     CGroup: /system.slice/apache2.service
             ??2257 /usr/sbin/apache2 -k start
             ??2259 /usr/sbin/apache2 -k start
             ??2260 /usr/sbin/apache2 -k start

Aug 21 04:13:30 debian11 systemd[1]: Starting The Apache HTTP Server...
Aug 21 04:13:30 debian11 apachectl[2246]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 216.9>
Aug 21 04:13:30 debian11 systemd[1]: Started The Apache HTTP Server.

Vérifier l’installation de PHP sur Apache

Ensuite, tu devras créer un exemple de fichier PHP à servir sur le serveur Web Apache. Tu peux créer un fichier phpinfo.php dans ton répertoire exemple.com :

nano /var/www/html/example.com/phpinfo.php

Ajoute la ligne suivante :

<?php phpinfo(); ?>

Sauvegarde et ferme le fichier puis ouvre ton navigateur Web et accède à ta page PHP en utilisant l’URL http://example.com/phpinfo.php. Tu devrais voir ta page PHP sur l’écran suivant :

PHP sur Debian 11

Conclusion

Dans le guide ci-dessus, nous avons expliqué comment installer la pile LAMP sur Debian 11. Tu peux maintenant commencer à héberger ton premier site Web en utilisant la pile LAMP. N’hésite pas à me demander si tu as des questions.

Vous aimerez aussi...