Installation d'une pile LAMP et d'un CMS

Contexte et objectifs

L'objectif de ce TP est de préparer un serveur d'application web sur une machine virtuelle sous Debian / Ubuntu Server, capable d'héberger des applications web dynamiques ainsi qu'un CMS utilisé dans le monde professionnel.

La mise en place d'une stack LAMP fournit un environnement complet intégrant un serveur web, un moteur de scripts et un système de gestion de base de données — base essentielle au déploiement d'applications web professionnelles.

Linux Apache MariaDB PHP WordPress Debian
Besoins identifiés
  • Disposer d'un serveur web fonctionnel accessible depuis le réseau
  • Exécuter des pages web dynamiques via un moteur de script (PHP)
  • Stocker et gérer les données des applications via un SGBD (MariaDB)
  • Vérifier le démarrage automatique des services
  • Tester l'accessibilité depuis un poste client du réseau
  • Déployer un CMS prêt à l'emploi (WordPress)
Stack LAMP — Définition
  • L — Linux : système d'exploitation du serveur (Debian / Ubuntu Server)
  • A — Apache : serveur web chargé de diffuser les pages
  • M — MariaDB : système de gestion de base de données relationnelle
  • P — PHP : langage de script côté serveur pour le contenu dynamique
Paquets installés
apache2 mariadb-server mariadb-client mariadb-common php php-mysqli

Un CMS WordPress a également été déployé sur cette infrastructure, permettant d'administrer facilement un site web dynamique tout en conservant une architecture modulaire et évolutive.

Réalisation

1 — Mise à jour du système

Mise à jour de la liste des paquets afin de garantir la stabilité et la sécurité de l'environnement avant toute installation.

apt update && apt upgrade -y
2 — Installation de la stack LAMP

Installation des composants nécessaires au fonctionnement du serveur web et des applications dynamiques.

apt install apache2 mariadb-server mariadb-client \
mariadb-common php php-mysqli -y
3 — Vérification des services

Contrôle qu'Apache et MariaDB sont actifs et configurés pour démarrer automatiquement avec le système.

systemctl status apache2
systemctl status mariadb
4 — Vérification du serveur web

Depuis un poste du réseau, accès à la page par défaut d'Apache via l'adresse IP du serveur. L'affichage correct confirme le bon fonctionnement du service web.

http://<IP_du_serveur>
5 — Vérification du moteur PHP

Création d'un fichier de test dans le répertoire web (/var/www/html/) pour valider l'interprétation PHP par Apache.

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

L'affichage de la page phpinfo() depuis un navigateur confirme que PHP fonctionne correctement.

6 — Téléchargement et déploiement de WordPress

Téléchargement de WordPress depuis le site officiel, extraction et placement des fichiers dans le répertoire web d'Apache.

cd /var/www/html
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
chown -R www-data:www-data wordpress/
7 — Préparation de la base de données

Création d'une base de données dédiée à WordPress sur MariaDB, avec un utilisateur et les droits associés. Les droits d'accès aux fichiers ont été ajustés pour garantir le bon fonctionnement et la sécurité de l'application.

CREATE DATABASE wordpress;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY '**';
GRANT ALL ON wordpress. TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
8 — Installation via l'interface web

Accès à l'assistant d'installation WordPress depuis un navigateur. L'assistant guide la configuration : langue, connexion à la base de données et création du compte administrateur.

http://<IP_du_serveur>/wordpress

Preuves de réalisation

Page par défaut Apache (accès réseau)

Capture de l'affichage de la page web par défaut d'Apache depuis un navigateur distant.

Page par défaut d'Apache affichée depuis un navigateur distant
Statut MariaDB (SystemD)

Service MariaDB actif et activé au démarrage — confirmé via systemctl status mariadb.

Statut Apache (SystemD)

Service Apache actif et activé au démarrage — confirmé via systemctl status apache2.

Page phpinfo()

Affichage correct de la page info.php confirmant le bon fonctionnement du moteur PHP.

Détails de configuration PHP

Informations détaillées sur la configuration PHP visibles via phpinfo().

Interface d'installation WordPress

Accès à l'assistant d'installation WordPress depuis un navigateur — configuration du site et de la base de données.