Ton premier site en ligne – Apache
Introduction
Apache est l’un des serveurs HTTP les plus populaires et puissants utilisés pour la mise en ligne des sites web. Ce tutoriel vous guidera à travers l’installation d’Apache, la configuration des paramètres de base, la gestion des hôtes virtuels et la compréhension des logs du serveur. Ce guide est orienté débutant et utilise un environnement Debian pour les exemples.
Prérequis:
- Debian installé soit avec WSL, soit sur un OS Linux like
- Connaissance de base en bash
Pas de connaissance en bash ? Pas de debian? Le terminal te fait peur ? Pas de panique !
Nous avons déjà créé des tutoriels pour t’aider :
- Initiation à GNU/Linux et ses distributions: [Lien vers le tutoriel GNU/Linux]
- Initiation aux commandes bash: [Lien vers le tutoriel bash]
C’est quoi un serveur HTTP ?
Avant d’installer et de commencer à mettre les mains dans Apache2. Il est important de comprendre ce qu’est un serveur HTTP.
Pour t’aider à comprendre le fonctionnement d’un serveur HTTP, imaginons Internet comme un grand restaurant.
Le client: Toi, l’utilisateur qui souhaite déguster un bon repas (lire un site web).
Le serveur HTTP: Le serveur du restaurant, qui reçoit ta commande (demande de page web) et t’apporte ton plat (la page web).
La cuisine: L’ordinateur où sont stockés les fichiers du site web (images, textes, etc.).
Passons à la commande :
- Tu as faim et tu repères un restaurant (tu tapes une adresse web dans ton navigateur).
- Tu entres dans le restaurant et demande le menu au serveur (ton navigateur envoie une requête HTTP au serveur).
- Le serveur consulte la cuisine et t’apporte le plat que tu as commandé (le serveur HTTP récupère les fichiers du site web et les envoie à votre navigateur).
- Tu dégustes ton repas et tu paies l’addition avant de partir (tu visualises la page web et tu fermes ton navigateur).
Remarques importantes :
- Plusieurs clients peuvent commander en même temps (le serveur HTTP peut gérer plusieurs requêtes simultanément).
- Le serveur peut avoir plusieurs plats à la carte (le serveur HTTP peut stocker plusieurs sites web).
- Le menu n’est pas toujours disponible (le site web peut être en maintenance ou indisponible).
Un serveur HTTP est donc un logiciel qui permet aux navigateurs web d’accéder aux sites web. Il joue un rôle crucial dans le fonctionnement d’Internet, en assurant la communication entre les utilisateurs et les sites web.
Différence entre un serveur HTTP et un serveur web:
-
- Serveur HTTP: Le logiciel gère les requêtes et les réponses selon le protocole HTTP.
- Serveur web: L’ordinateur physique sur lequel le serveur HTTP est installé, et qui stocke également les fichiers du site web.
Installation d’Apache
Étape 1 : Mise à jour des paquets
Avant d’installer Apache, assure-toi que ton système est à jour.
Étape 2 : Installation d’Apache
Pour installer Apache, utilise la commande suivante :
Pour MacOS, il faut avoir le gestionnaire de paquet brew et faire la commande suivante :
Étape 3 : Vérification de l’installation
Étant donné qu’ une fois installé il se lance automatiquement, pour vérifier que Apache est installé et fonctionne, ouvre ton navigateur web et tape http://localhost. Tu devrais voir la page par défaut d’Apache.
Tu peux également vérifier l’état du service Apache en utilisant la commande suivante :
Si il est pas exécuter c’est à dire en on running, il te suffit démarrer le services avec la commande suivante :
Configuration des Paramètres de Base
Étape 1 : Configuration des Fichiers
Les fichiers de configuration principaux d’Apache se trouvent dans le répertoire /etc/apache2. Les fichiers les plus importants sont :
- apache2.conf : le fichier de configuration principal.
- ports.conf : définit les ports sur lesquels Apache écoute.
- sites-available/ : contient les configurations des sites disponibles.
- sites-enabled/ : contient les liens symboliques vers les sites activés.
Étape 2 : Édition du Fichier de Configuration
Pour éditer le fichier de configuration principal (j’utilise vim mais tu peux te servir de nano):
Tu peux y ajouter ou modifier des paramètres globaux selon tes besoins.
Étape 3 : Redémarrage d’Apache
Après toute modification, redémarre Apache pour appliquer les changements :
Gestion des Hôtes Virtuels
Les hôtes virtuels permettent d’héberger plusieurs sites web sur un seul serveur Apache. Les configurations des hôtes virtuels sont généralement définies dans des fichiers situés dans le répertoire sites-available.
Étape 1 : Création d’un Hôte Virtuel
Créer un nouveau fichier de configuration pour ton site :
Ajoute la configuration suivante :
Étape 2 : Configurez son nom de domaine en locale
Si tu suis ce tuto en étant sous WSL, il faut que tu saches que pour le moment tout ce que l’on fait n’est pas encore directement en ligne sur un serveur mais en local sur ta machine, en conséquence, on va pouvoir donner le nom de domaine que l’on veut à notre hôte virtuel apache.
Comment ? rien de plus simple, il suffit d’éditer le fichier /etc/hosts, il faut savoir que c’est le système de résolution de domaine de ton pc (en local), le but d’un domaine, c’est d’avoir un nom plutôt qu’un IP pour retrouver un site, par exemple l’IP de Google, c’est : 142.251.37.227
sauf que lorsqu’on fait une recherche Google, on tape à aucun moment cette adresse (mais google.fr qui est plus facile à se rappeler) grâce au nom de domaine.
Normalement les noms de domaine sont payants mais l’avantage de travailler en local, c’est que l’on est pas obligé d’acheter un nom de domaine auprès d’un hébergeur en ligne mais simplement de dire à votre PC que ce nom domaine est local sur notre machine ce qui est possible grâce à l’adresse de bouclage (adresse réseaux pour que ton pc parle a lui-même, un peu comme si te parler à toi-même dans un miroir).
Du coup dans notre /etc/hosts qu’on edit soit avec vim ou nano on mettre la ligne suivante à la fin, car le nom de domaine virtuel apache est votre_site.
Étape 3 : Activation de l’Hôte Virtuel
Active ton nouvel hôte virtuel avec la commande :
Étape 4 : Création du Répertoire du Site
Crée le répertoire où seront stockés les fichiers de ton site :
Étape 5 : Redémarrage d’Apache
Redémarre Apache pour appliquer les changements :
Étape 6 : Tester ton nouveaux site
Pour tester tes hôtes virtuel on peut faire dans faire dans le répertoire /var/var/testo un fichier index.html avec le contenu suivant :
Il te suffit ensuite d’aller sur l’url suivante : http://testo.com pour vérifier que ton site est bien fonctionnel
Compréhension des Logs du Serveur
Les logs du serveur sont essentiels pour surveiller et diagnostiquer les problèmes. Les logs principaux d’Apache sont :
- access.log : enregistre toutes les requêtes reçues par le serveur.
- error.log : enregistre toutes les erreurs rencontrées par le serveur.
Étape 1 : Localisation des Logs
Les logs sont situés dans le répertoire /var/log/apache2/.
Étape 2 : Visualisation des Logs
Pour visualiser les logs en temps réel, utilisez la commande tail :
Tu veux aller plus loin ? Le monde du web et du numérique te passionne et tu veux en faire ton métier ? Tu vis en région Provence-Alpes-Côte d’Azur ?
Cela tombe bien, notre centre de formation est situé 14 Av. Jean Médecin, 06000 Nice à quelques minutes de la gare SNCF de Nice et juste à côté de l’arrêt Jean Médecin de la ligne 1 et 2.
Chez nous, vise l’excellence, façonne-toi un savoir-faire concret dans le développement web et obtient un diplôme national RNCP reconnu par l’État.
Inscris-toi dès maintenant l’une de nos formations aux choix :