<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archives des Serveur Web - Pandawan</title>
	<atom:link href="https://www.pandawan.fr/tag/serveur-web/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.pandawan.fr/tag/serveur-web/</link>
	<description>La connaissance prends de la valeur quand on la partage</description>
	<lastBuildDate>Sat, 18 Jan 2025 04:27:04 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>

<image>
	<url>https://www.pandawan.fr/wp-content/uploads/2024/02/cropped-cropped-DALL·E-2024-02-08-04.31.51-Un-logo-creatif-pour-Pandawan-representant-un-panda-stylise-et-sympathique-en-train-de-faire-de-linformatique.-Le-panda-est-assis-devant-un-ordina-1-32x32.webp</url>
	<title>Archives des Serveur Web - Pandawan</title>
	<link>https://www.pandawan.fr/tag/serveur-web/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>02 Installation d&#8217;un serveur web Apache</title>
		<link>https://www.pandawan.fr/02-installation-dun-serveur-web-apache/</link>
		
		<dc:creator><![CDATA[Belkacem EL KHRISSI]]></dc:creator>
		<pubDate>Fri, 17 Jan 2025 05:11:12 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Serveur Web]]></category>
		<category><![CDATA[Apache]]></category>
		<guid isPermaLink="false">https://www.pandawan.fr/?p=1316</guid>

					<description><![CDATA[<p>Dans cette article, l&#8217;installation d&#8217;un serveur Web Apache se fera sous Ubuntu 22.04 LTS (Long Time Support) disponible à cette adresse https://ubuntu.com/download/server. Nous ne détaillerons pas l&#8217;installation de Ubuntu. Il [...]</p>
<p>L’article <a href="https://www.pandawan.fr/02-installation-dun-serveur-web-apache/">02 Installation d&rsquo;un serveur web Apache</a> est apparu en premier sur <a href="https://www.pandawan.fr">Pandawan</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Dans cette article, l&rsquo;installation d&rsquo;un serveur Web Apache se fera sous Ubuntu 22.04 LTS (Long Time Support) disponible à cette adresse <a href="https://ubuntu.com/download/server">https://ubuntu.com/download/server</a>. Nous ne détaillerons pas l&rsquo;installation de Ubuntu.</p>



<p>Il existe deux principales méthodes pour installer le serveur web Apache sur Ubuntu :</p>



<ol class="wp-block-list">
<li><strong>Installation via les paquets officiels de la distribution</strong> : Cette méthode est la plus simple et la plus couramment utilisée. Elle permet d&rsquo;installer Apache en utilisant le gestionnaire de paquets APT, garantissant ainsi une installation rapide et une intégration aisée avec le système. Cependant, elle peut limiter l&rsquo;utilisateur à la version d&rsquo;Apache disponible dans les dépôts officiels d&rsquo;Ubuntu.</li>



<li><strong>Compilation à partir des sources</strong> : Cette approche offre une flexibilité accrue, permettant d&rsquo;installer la version la plus récente d&rsquo;Apache ou de personnaliser les options de compilation selon des besoins spécifiques. Néanmoins, elle est plus complexe et nécessite une gestion manuelle des dépendances et des mises à jour.</li>
</ol>



<h2 class="wp-block-heading" id="h-i-nstallation-d-apache-via-apt"><strong>I</strong>nstallation d&rsquo;Apache via APT</h2>



<p>Pour découvrir et installer Apache en utilisant le gestionnaire de paquets APT sur Ubuntu, Nous suivrons  les étapes ci-dessous :</p>



<ol class="wp-block-list">
<li><strong>Mise à jour de l&rsquo;index des paquets</strong> : Avant toute installation, il est recommandé de mettre à jour l&rsquo;index local des paquets pour s&rsquo;assurer que le système dispose des dernières informations sur les versions disponibles. Exécutons la commande suivante :</li>
</ol>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo apt update</code></pre>



<p><strong>Installation du paquet Apache</strong> : Après la mise à jour, installons Apache en exécutant :</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo apt install apache2 apache2-utils -y</code></pre>



<p>Cette commande télécharge et installe Apache et les utilitaires d&rsquo;Apache ainsi que toutes les dépendances requises.</p>



<p>En listant les processus en cours  sur la machine, nous voyons qu’il est en exécution.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo ps aux | grep apache2</code></pre>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="959" height="134" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-4.png" alt="processus Apache en cours d'éxecution" class="wp-image-1317" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-4.png 959w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-4-300x42.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-4-768x107.png 768w" sizes="(max-width: 959px) 100vw, 959px" /></figure>



<p>Le serveur Web ecoute sur le port 80 par défaut. Le client enverra une requête depuis un port dynamique, le serveur recevra cette requête sur le port 80, il doit par conséquent écouter ce port pour qu’il puisse y répondre.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="516" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-6-1024x516.png" alt="Fonctionnement port d'une requête http" class="wp-image-1319" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-6-1024x516.png 1024w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-6-300x151.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-6-768x387.png 768w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-6.png 1223w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading" id="h-les-fichiers-de-configuration-d-un-serveur-web-apache">Les fichiers de configuration d&rsquo;un serveur Web Apache</h2>



<p>Lors de l’installation, une liste de répertoire a été créé dans /etc/apache2/. Nous pouvons voir cette liste de répertoires en exécutant la commande suivante : </p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo ls -l /etc/apache2/ | egrep "^d"</code></pre>



<figure class="wp-block-image size-full"><img decoding="async" width="945" height="228" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-7.png" alt="repertoires d'un serveur Web Apache" class="wp-image-1320" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-7.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-7-300x72.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-7-768x185.png 768w" sizes="(max-width: 945px) 100vw, 945px" /></figure>



<p>Ses répertoires contiendront les configurations des futurs site internet.</p>



<ul class="wp-block-list">
<li><strong>sites-available</strong> :  contient les fichiers de configuration des sites disponibles</li>



<li><strong>sites-enabled</strong> : contient des liens symboliques vers les configurations, dans site-available, des sites activés</li>



<li><strong>conf-available</strong> : contient les fichiers de configuration des autres services disponibles</li>



<li><strong>conf-enabled</strong> : contient des liens symboliques vers les configurations, dans conf-available, des autres services activés</li>



<li><strong>mods-available</strong> : contient les fichiers de configuration des modules d&rsquo;Apache disponibles</li>



<li><strong>mods-enabled</strong> : contient des liens symboliques vers les configurations, dans mods-available, des modules activés</li>
</ul>



<p>Tous ces fichiers vont venir alimenter le fichier apache2.conf.</p>



<h3 class="wp-block-heading" id="h-fichier-de-configuration-apache2-conf">Fichier de configuration apache2.conf</h3>



<p>Le fichier de configuration principal d&rsquo;Apache2, nommé « apache2.conf », centralise les paramètres du serveur. En l&rsquo;éditant, nous observons qu&rsquo;il inclut, via des directives « IncludeOptional », les configurations des répertoires précédemment mentionnés, permettant une organisation modulaire et hiérarchisée des réglages.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo cat /etc/apache2/apache2.conf | grep IncludeOptional</code></pre>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="140" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-8.png" alt="" class="wp-image-1321" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-8.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-8-300x44.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-8-768x114.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>La directive « IncludeOptional » dans la configuration d&rsquo;Apache permet d&rsquo;inclure des fichiers supplémentaires de manière conditionnelle. Contrairement à la directive « Include », qui génère une erreur si le fichier spécifié n&rsquo;existe pas, « IncludeOptional » ignore silencieusement les fichiers manquants. Par exemple, l&rsquo;instruction « IncludeOptional conf-enabled/*.conf » inclura tous les fichiers avec l&rsquo;extension .conf présents dans le répertoire conf-enabled, sans provoquer d&rsquo;erreur si aucun fichier ne correspond au motif.</p>



<h3 class="wp-block-heading" id="h-les-directives">Les directives</h3>



<p>La configuration d&rsquo;Apache repose sur des directives spécifiques qui définissent le comportement du serveur pour différents répertoires et fichiers. Pour configurer le serveur Apache afin qu&rsquo;il applique des directives spécifiques à un répertoire, on utilise la section &lt;Directory>. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="128" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-9.png" alt="Directive /var/www/ dans un serveur WEN Apache" class="wp-image-1322" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-9.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-9-300x41.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-9-768x104.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p><strong>Options Indexes FollowSymLinks :</strong></p>



<ul class="wp-block-list">
<li><strong>Indexes </strong>: Active l&rsquo;affichage de la liste des fichiers si aucun fichier index (comme <strong>index.html</strong>) n&rsquo;est présent dans le répertoire.</li>



<li><strong>FollowSymLinks</strong> : Autorise le serveur à suivre les liens symboliques présents dans le répertoire.</li>
</ul>



<p><strong>AllowOverride None</strong> : Empêche l&rsquo;utilisation de fichiers .htaccess pour surcharger les directives définies dans le fichier de configuration principal pour ce répertoire.</p>



<p><strong>Require all granted</strong> : Accorde l&rsquo;accès à tous les utilisateurs aux fichiers et sous-répertoires du répertoire spécifié.</p>



<h3 class="wp-block-heading" id="h-les-modules">Les modules</h3>



<p>Apache HTTP Server est conçu de manière modulaire pour s&rsquo;adapter à une variété d&rsquo;utilisations. Il intègre des modules statiques, compilés directement dans le noyau du serveur, et des modules dynamiques, chargés au besoin. Pour répertorier tous les modules activés, exécutez la commande suivante :</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo apache2ctm -M</code></pre>



<p>Cette commande affiche la liste des modules actuellement chargés par Apache, en précisant pour chacun s&rsquo;il est statique ou dynamique.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="714" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-10.png" alt="Liste module Serveur Web Apache" class="wp-image-1323" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-10.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-10-300x227.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-10-768x580.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>La liste des modules est disponible dans le répertoire «/etc/apache2/mods-available ».</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="115" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-11.png" alt="" class="wp-image-1324" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-11.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-11-300x37.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-11-768x93.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>Pour voir la liste des modules partagés c’est-à-dire marqué par (shared), il faudra lister le contenu du répertoire « /etc/apache2/mods-enabled/ ».</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="109" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-12.png" alt="Liste modules serveur Apache partagés" class="wp-image-1325" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-12.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-12-300x35.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-12-768x89.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>Si nous y regardions de plus près, nous constaterions que le nombre de module partagé et le nombre de fichier portant l’extension load, sera le même.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ echo -e "- nombre de fichier dans mods_enable : $(ls -1 /etc/apache2/mods-enabled/ | grep "load"| wc -l )\n- nombre de module chargé dans Apache : $(apache2ctl -M | grep "shared" | wc -l)"</code></pre>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="86" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-13.png" alt="lister le nombre de module activé" class="wp-image-1326" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-13.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-13-300x27.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-13-768x70.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<h3 class="wp-block-heading" id="h-installer-un-module">Installer un module</h3>



<p>Nous installons un module dynamique lorsque nous ajoutons un module à Apache. Un module statique, quant à lui, est directement intégré aux binaires d’Apache. Pour installer un module statique, nous devons recompiler Apache. Nous décrivons ici les étapes nécessaires pour ajouter une fonctionnalité qui réduit les risques de déni de service et d&rsquo;attaques par force brute. Le module utilisé pour cet objectif est « mod_evasive ». Nous débutons par l&rsquo;installation de ce module.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo apt install libapache2-mod-evasive -y</code></pre>



<p>Une fois le module installé, il est chargé par défaut. Pour s’en assurer, il nous suffira de lister les modules et de recherche le mot clé « evasive ».</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo apache2ctl -M | grep evasive</code></pre>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo apache2ctl -M | grep evasive</code></pre>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="73" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-14.png" alt="verification mod_evasive Serveur Web Apache" class="wp-image-1327" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-14.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-14-300x23.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-14-768x59.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>Configurons ce module, en créant un fichier portant l’extension « .conf ». Précédemment, nous avons vu que les fichiers de configuration des modules sont é créer dans le répertoire « /etc/apache2/mods-available/ »</p>



<pre class="wp-block-code"><code>belkacem@apache:~$sudo vim /etc/apache2/mods-available/evasive.conf</code></pre>



<pre class="wp-block-code"><code>&lt;IfModule mod_evasive24.c>
   # Configuration globale
   DOSHashTableSize 2048
   DOSPageCount 10
   DOSSiteCount 50
   DOSPageInterval 1
   DOSSiteInterval 1
   DOSBlockingPeriod 10
   # Configuration pour les requêtes HTTP
   DOSSystemCommand "sudo /usr/local/bin/block_ip %s"
   DOSLogDir "/var/log/mod_evasive"
   DOSWhitelist 127.0.0.1
   # Configuration pour les tentatives d'authentification
   DOSEmailNotify admin@domain.tld
   DOSLogOnly On
   DOSWhiteList /etc/apache2/mods-available/mod-evasive/whitelist
&lt;/IfModule></code></pre>



<p>Nous créerons un fichier qui contiendras les adresses IP qui ne sont pas concerné par les restrictions du module « evasive ».</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo mkdir /etc/apache2/mods-available/mod-evasive
belkacem@apache:~$ sudo vim /etc/apache2/mods-available/mod-evasive/whitelist</code></pre>



<pre class="wp-block-code"><code># Liste blanche pour mod_evasive
# Adresses IP à ignorer
127.0.0.1
10.0.0.1
# Noms d'hôte à ignorer
Localhost
client.apache.dev

</code></pre>



<p>Activons maintenant le module</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo a2enmod evasive</code></pre>



<p>Pour que cette configuration soit prise en considération par Apache, nous devons installer recharger le configuration Apache ou redémarrer le service apache2</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo apache2ctl restart</code></pre>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="98" height="159" src="https://www.pandawan.fr/wp-content/uploads/2025/01/une-image-contenant-texte-graphiques-vectoriels-13.png" alt="Une image contenant texte, graphiques vectoriels Description générée automatiquement" class="wp-image-1305" style="width:127px;height:auto"/></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Bon à savoir</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Le module evasive à lui seul, ne peut pas offrir une garantie d’efficacité de 100% contre toutes les attaques par déni de service, il convient de l’adjoindre à d’autres mesure de sécurité (Service de protection anti-DDOS, utilisation d’un équilibreur de charge, limiter la bande passante, surveillances des journaux, etc)</p>
</blockquote>
</div>
</div>



<p></p>
<p>L’article <a href="https://www.pandawan.fr/02-installation-dun-serveur-web-apache/">02 Installation d&rsquo;un serveur web Apache</a> est apparu en premier sur <a href="https://www.pandawan.fr">Pandawan</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>03 Héberger des sites internet avec Apache</title>
		<link>https://www.pandawan.fr/heberger-site-internet/</link>
		
		<dc:creator><![CDATA[Belkacem EL KHRISSI]]></dc:creator>
		<pubDate>Fri, 17 Jan 2025 05:11:12 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Serveur Web]]></category>
		<category><![CDATA[Apache]]></category>
		<guid isPermaLink="false">https://www.pandawan.fr/?p=1330</guid>

					<description><![CDATA[<p>Pour héberger un site Web avec Apache, il faudra, dans un premier , comprendre sa structuration dans un serveur WEB. Un site internet utilise des répertoires et des fichiers accessibles [...]</p>
<p>L’article <a href="https://www.pandawan.fr/heberger-site-internet/">03 Héberger des sites internet avec Apache</a> est apparu en premier sur <a href="https://www.pandawan.fr">Pandawan</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Pour héberger un site Web avec Apache, il faudra, dans un premier , comprendre sa structuration dans un serveur WEB. Un site internet utilise des répertoires et des fichiers accessibles par un navigateur web. Par défaut, comme notifier dans <a href="https://doc.ubuntu-fr.org/apache2">la documentation de Ubuntu,</a> ces éléments se trouvent dans le répertoire /var/www/html. Le fichier de configuration /etc/apache2/sites-available/000-default.conf contient cette information.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo nano /etc/apache2/sites-available/000-default.conf</code></pre>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="351" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-15.png" alt="Directive VirtualHost  pour l'hébergement de site web" class="wp-image-1331" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-15.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-15-300x111.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-15-768x285.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>Lorsqu&rsquo;une requête arrive sur le port 80, elle est traitée dans le répertoire par défaut « /var/www/html ». En parallèle, les erreurs sont consignées dans le fichier « /var/log/apache2/error.log », tandis que les informations relatives aux accès sont enregistrées dans « /var/log/apache2/access.log ». Ainsi, l&rsquo;hébergement d&rsquo;un site internet repose sur une organisation logique illustrée par ces répertoires..</p>



<p>Dans le répertoire /var/www/html/, se trouve une page HTML nommée « index.html ». Pour personnaliser cette page, nous éditons ce fichier et modifions son titre. Plus précisément, à la ligne 208, nous remplaçons le texte « Apache2 Default Page » par un titre de notre choix, reflétant ainsi le contenu ou l&rsquo;objectif du site. Une fois les modifications effectuées, nous enregistrons le fichier pour appliquer ces changements.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="158" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-16.png" alt="Fichier HTML default serveur Web Apache" class="wp-image-1332" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-16.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-16-300x50.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-16-768x128.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>En accédant à notre serveur web à l’aide d’un navigateur, nous constatons que le titre a bien été modifié. Cela confirme que nos modifications ont été prises en compte. Ainsi, héberger un site internet repose sur quelques étapes simples : configurer le serveur, organiser les fichiers dans le répertoire adéquat, et personnaliser les pages selon les besoins du site. Avec ces bases, il devient facile de gérer un hébergement web fonctionnel et adapté.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="527" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-17.png" alt="page Web index.html après modification" class="wp-image-1333" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-17.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-17-300x167.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-17-768x428.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<h2 class="wp-block-heading" id="h-hebergement-plusieurs-sites-web-avec-apache-en-utilisant-les-ports">Hebergement plusieurs sites Web avec Apache en utilisant les ports</h2>



<p>Par défaut, comme nous l&rsquo;avons mentionné dans l&rsquo;article précédent, Apache écoute sur le port 80. Cependant, vous pouvez configurer Apache pour écouter sur un autre port en créant un second « VirtualHost » dédié. Par exemple, nous allons configurer Apache pour écouter sur le port 81 et associer ce port au répertoire /var/www/html/port81/. Pour cela, nous basons notre travail sur le fichier de configuration par défaut, que nous adaptons pour répondre aux besoins spécifiques de l&rsquo;hébergement multi-site.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/port81.conf
belkacem@apache:~$ sudo vim /etc/apache2/sites-available/port81.conf</code></pre>



<p>Nous configurons Apache pour écouter sur le port 81 en modifiant le contenu du fichier de configuration. Nous gérons ensuite les requêtes adressées à ce port à l’aide des fichiers situés dans le répertoire /var/www/html/port81. De plus, nous mettons en place des journaux spécifiques pour ces requêtes, ce qui nous permet d’assurer un suivi clair et détaillé de l’activité liée à ce port.</p>



<pre class="wp-block-code"><code>Listen 81
&lt;VirtualHost *:81&gt;
        DocumentRoot /var/www/html/port81/
        ErrorLog ${APACHE_LOG_DIR}/error_port81.log
        CustomLog ${APACHE_LOG_DIR}/access_port81.log combined
&lt;/VirtualHost&gt;</code></pre>



<h3 class="wp-block-heading" id="h-creation-du-repertoire-pour-l-hebergement-du-site-web">Création du répertoire pour l&rsquo;hébergement du site web</h3>



<p>Nous créons le répertoire requis, puis nous simplifions le processus en copiant et collant le fichier index.html dans le répertoire /var/www/html/port81/ que nous avons créé. Avec cette configuration, nous atteignons notre objectif d’héberger un site internet supplémentaire.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo mkdir /var/www/html/port81/
belkacem@apache:~$ sudo cp /var/www/html/index.html /var/www/html/port81/</code></pre>



<p>Nous modifierons le titre du fichier «&nbsp;index.html&nbsp;» contenu dans le répertoire /var/www/html/port81/</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="202" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-18.png" alt="" class="wp-image-1334" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-18.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-18-300x64.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-18-768x164.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>Actuellement, notre site est dans le répertoire /etc/apache2/sites-available/, ce qui le rend disponible mais pas encore activé. Pour l&rsquo;activer, nous copions sa configuration dans le répertoire /etc/apache2/sites-enabled/. Ensuite, nous créons un lien symbolique pointant vers le fichier de configuration. Ainsi, nous configurons Apache pour activer ce site et le rendre prêt à l&rsquo;utilisation. Grâce à cette méthode, nous simplifions la gestion des sites hébergés.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo ln -s /etc/apache2/sites-available/port81.conf /etc/apache2/sites-enabled/port81.conf</code></pre>



<h3 class="wp-block-heading" id="h-recharger-la-nouvelle-configuration">Recharger la nouvelle configuration</h3>



<p>Nous appliquons la nouvelle configuration d&rsquo;Apache en rechargeant ses fichiers. Pour cela, nous rechargeons le service Apache. Cette action garantit que le serveur prend en compte les modifications et fonctionne correctement avec les nouveaux paramètres.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo systemctl reload apache2</code></pre>



<p>Pour accéder à ce nouveau site internet, nous précisons le port 81 dans l’URL. Nous entrons donc <code>http://&lt;adresse_ip>:81</code> dans la barre d’adresse du navigateur. Vérifions le résultat. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="398" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-19.png" alt="" class="wp-image-1335" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-19.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-19-300x126.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-19-768x323.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<h2 class="wp-block-heading" id="h-hebergement-plusieurs-site-web-en-utilisant-les-noms-de-domaine">Hébergement plusieurs site Web en utilisant les noms de domaine</h2>



<p>Dans le chapitre précédent, nous avons appris à créer plusieurs sites internet sur un même serveur. Cependant, bien que cette méthode soit adéquate pour un usage privé, elle ne convient pas à un usage public, comme celui d’un site vitrine. En effet, il est important de noter qu’un utilisateur lambda ne prendra pas le temps de saisir un numéro de port ou une adresse IP pour accéder à un site.</p>



<h3 class="wp-block-heading" id="h-simuler-un-nom-de-domaine-dans-une-environnement-de-test">Simuler un nom de domaine dans une environnement de test</h3>



<p>Ainsi, dans un environnement de production, nous procédons différemment. Nous achetons un nom de domaine auprès d’un registraire (ou registrar en anglais). Ce dernier est une entreprise accréditée par l’<a href="https://www.icann.org/fr">ICANN </a>(Internet Corporation for Assigned Names and Numbers) pour fournir des noms de domaine publics. Par conséquent, cette démarche garantit une expérience utilisateur plus professionnelle et accessible.</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="98" height="159" src="https://www.pandawan.fr/wp-content/uploads/2025/01/une-image-contenant-texte-graphiques-vectoriels-13.png" alt="Une image contenant texte, graphiques vectoriels Description générée automatiquement" class="wp-image-1305" style="width:105px;height:auto"/></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td><strong><em>Bon à savoir :</em></strong> <br><br>L&rsquo;ICANN est une organisation à but non lucratif en charge de la gestion des noms de domaine et des adresses IP sur Internet.</td></tr></tbody></table></figure>
</blockquote>
</div>
</div>



<p>Dans notre contexte, nous travaillons en mode « lab » dans un environnement privé. Par conséquent, nous simulons le rôle du registar. Pour cela, nous utilisons une machine Windows Client afin d’interroger notre serveur web.</p>



<p>Ensuite, nous modifions le fichier hosts, situé dans le dossier c:\windows\system32\drivers\etc\. Pour éditer ce fichier, nous ouvrons un éditeur de texte tel que « Notepad ». Nous veillons à exécuter cet éditeur en tant qu’administrateur avant d’ouvrir le fichier. De plus, nous sélectionnons l’option « Tous les fichiers » dans la liste déroulante « Type de fichier » pour afficher le fichier dans le champ « Nom de fichier ». Ainsi, nous pouvons apporter les modifications nécessaires de manière efficace.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="405" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-21-1024x405.png" alt="" class="wp-image-1339" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-21-1024x405.png 1024w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-21-300x119.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-21-768x304.png 768w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-21.png 1228w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Dans ce fichier, nous associons deux noms de domaine à l’adresse IP de notre serveur web. Ensuite, nous enregistrons les modifications pour que la configuration soit prise en compte. Ainsi, nous établissons le lien nécessaire entre les noms de domaine et le serveur.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="449" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-22-1024x449.png" alt="" class="wp-image-1340" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-22-1024x449.png 1024w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-22-300x132.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-22-768x337.png 768w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-22.png 1220w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Ensuite, nous vérifions la configuration en envoyant un ping sur les deux noms de domaine ajoutés dans le fichier hosts.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="195" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-23.png" alt="" class="wp-image-1341" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-23.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-23-300x62.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-23-768x158.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="195" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-24.png" alt="" class="wp-image-1342" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-24.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-24-300x62.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-24-768x158.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>Dans les captures d’écran ci-dessus, nous voyons que les noms de domaine sont liés à l’adresse IP 10.0.0.3. Cela signifie que deux noms de domaine différents pointent vers la même adresse IP. Dans cet exemple, nous configurons les deux sites pour qu’ils utilisent le port 80. Ensuite, nous créons deux VirtualHost, chacun configuré pour écouter sur ce port. Pour mieux organiser les réglages, nous utilisons un fichier de configuration séparé pour chaque VirtualHost.</p>



<h3 class="wp-block-heading" id="h-configuration-des-virtualhost">Configuration des VirtualHost</h3>



<p>D’abord, nous créons un fichier de configuration dans le répertoire /etc/apache2/conf-available/. Pour rendre cela clair, nous nommons chaque fichier en utilisant le nom de domaine. Nous nous assurons aussi que le fichier a l’extension « .conf », car Apache en a besoin pour reconnaître la configuration. Cette approche simple nous aide à structurer nos fichiers de façon pratique et efficace.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo vim /etc/apache2/conf-available/licorne.fr.conf</code></pre>



<p>Dans ce fichier, nous écrivons seulement les informations nécessaires. Nous précisons d’abord le dossier où les fichiers traiteront les requêtes HTTP. Ensuite, nous ajoutons le nom de domaine qui recevra ces requêtes. Enfin, nous créons un alias pour le nom de domaine. Avec cette configuration de base, les requêtes HTTP fonctionneront correctement.</p>



<pre class="wp-block-code"><code>&lt;VirtualHost *:80>
        DocumentRoot /var/www/html/licorne
        ServerName   www.licorne.fr
        ServerAlias  licorne.fr
&lt;/VirtualHost></code></pre>



<p>Dans cette configuration, nous stockons les fichiers et dossiers liés au domaine www.licorne.fr dans /var/www/html/licorne. Ce dossier n’existe pas encore, donc nous devons le créer. Cette étape permet d’organiser les fichiers du domaine de manière claire et efficace.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo mkdir /var/www/html/licorne/</code></pre>



<p>Nous y copions le fichier « index.html » présent dans /var/www/html/.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo cp /var/www/html/index.html /var/www/html/licorne/</code></pre>



<p>Nous créerons ensuite notre lien symbolique du fichier de configuration dans le répertoire /etc/apache2/sites-enabled/.</p>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo ln -s /etc/apache2/sites-available/ licorne.fr.conf /etc/apache2/sites-enabled/licorne.fr.conf</code></pre>



<p>Pour qu’Apache prenne en compte les modifications, nous rechargeons la configuration.</p>



<p> Ensuite, en répétant les mêmes étapes pour le second site, nous hébergeons deux sites sur la même adresse IP. Cette méthode permet de gérer facilement plusieurs sites sur un seul serveur.</p>



<pre class="wp-block-code"><code>&lt;VirtualHost *:80>
        DocumentRoot /var/www/html/panda
        ServerName   www.panda.fr
        ServerAlias  panda.fr
&lt;/VirtualHost></code></pre>



<pre class="wp-block-code"><code>belkacem@apache:~$ sudo mkdir /var/www/html/panda/
belkacem@apache:~$ sudo cp /var/www/html/port81/index.html /var/www/html/panda/
belkacem@apache:~$ sudo ln -s /etc/apache2/sites-available/ panda.fr.conf /etc/apache2/sites-enabled/panda.fr.conf</code></pre>
<p>L’article <a href="https://www.pandawan.fr/heberger-site-internet/">03 Héberger des sites internet avec Apache</a> est apparu en premier sur <a href="https://www.pandawan.fr">Pandawan</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>01 Serveur web et ses protocoles</title>
		<link>https://www.pandawan.fr/serveur-web-la-base-du-www/</link>
		
		<dc:creator><![CDATA[Belkacem EL KHRISSI]]></dc:creator>
		<pubDate>Fri, 17 Jan 2025 05:11:11 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Serveur Web]]></category>
		<category><![CDATA[Apache]]></category>
		<guid isPermaLink="false">https://www.pandawan.fr/?p=1233</guid>

					<description><![CDATA[<p>Les serveurs WEB constituent la base du WWW. Le WWW, ou « World Wide Web », est un système de gestion de documents hypertextuels. En effet, il permet aux utilisateurs d’accéder à [...]</p>
<p>L’article <a href="https://www.pandawan.fr/serveur-web-la-base-du-www/">01 Serveur web et ses protocoles</a> est apparu en premier sur <a href="https://www.pandawan.fr">Pandawan</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Les serveurs WEB constituent la base du WWW<strong>.</strong> Le WWW, ou « World Wide Web », est un système de gestion de documents hypertextuels. En effet, il permet aux utilisateurs d’accéder à des documents électroniques liés entre eux par des liens hypertexte. Comme nous l’expliquerons plus tard, un serveur web héberge ces documents  Dans les faits, ces documents, qui sont un ensemble d’informations, peuvent être consultés à distance.</p>



<p><a href="https://fr.wikipedia.org/wiki/Tim_Berners-Lee">Tim Berners-Lee</a>, un scientifique anglais, a créé le World Wide Web dans les années 1990 lorsqu’il travaillait au CERN (Conseil Européen pour la Recherche Nucléaire). Le World Wide Web est né dans le cadre d&rsquo;un projet permettant aux scientifiques de partager leurs travaux. Comme toute communication informatique, l’échange s’appuie sur un modèle standardisé nommé TCP/IP.</p>



<h2 class="wp-block-heading" id="h-le-modele-tcp-ip-la-base-de-la-communication-entre-serveur-web-et-client">Le modèle TCP/IP : La base de la communication entre Serveur Web et client </h2>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="588" height="278" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image.png" alt="Modele TCP/IP" class="wp-image-1308" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image.png 588w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-300x142.png 300w" sizes="auto, (max-width: 588px) 100vw, 588px" /></figure>



<p>L’IETF a défini le modèle TCP/IP dans les documents <a href="https://datatracker.ietf.org/doc/html/rfc791">RFC791</a> et <a href="https://datatracker.ietf.org/doc/html/rfc793">RFC793</a>. Il le décompose en 4 couches. Chacune de ces couches joue un rôle spécifique et s’appuie sur des protocoles pour remplir ses fonctions. Pour illustrer son fonctionnement, imaginez un bâtiment de 4 étages sans ascenseur. Pour se rendre au 4ème étage, il faut d’abord passer par le 1er, puis le 2ème, ensuite le 3ème, et enfin arriver au 4ème<strong>.</strong> On ne peut pas aller du 1er au 3ème sans passer par le 2ème étage. Tim Berners-Lee a créé le protocole HTTP pour être conforme à la logique de ce modèle de communication. Nous le situons dans la couche « Application » du modèle TCP/IP.</p>



<h3 class="wp-block-heading">L&rsquo;acronyme WWW (World Wide Web) et les URL</h3>



<p>Le terme WWW est souvent utilisé dans les adresses URL (Uniform Resource Locator) pour identifier un site web accessible par un lien hypertexte. Pour accéder à ces pages, nous avons besoin d’un navigateur qui transformera notre clic sur un lien hypertexte en requête HTTP. La machine où est installé le navigateur qui nous permet d’envoyer une requête est le client, et la machine qui reçoit et traite la requête est le serveur.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="945" height="234" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-1.png" alt="" class="wp-image-1310" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-1.png 945w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-1-300x74.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-1-768x190.png 768w" sizes="auto, (max-width: 945px) 100vw, 945px" /></figure>



<p>En effet, cette illustration offre une vision simplifiée de la communication, mais elle met en évidence l’importance du protocole HTTP dans le World Wide Web</p>



<h2 class="wp-block-heading" id="h-le-protocole-tcp-dans-les-serveurs-web">Le protocole TCP dans les serveurs WEB</h2>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="972" height="163" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-2.png" alt="" class="wp-image-1311" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-2.png 972w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-2-300x50.png 300w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-2-768x129.png 768w" sizes="auto, (max-width: 972px) 100vw, 972px" /></figure>



<p>Avant que le client puisse envoyer une requête HTTP, il doit établir une connexion TCP. Cette phase permet au client et au serveur de négocier les paramètres de connexion pour garantir que les données transmises seront correctement reçues et dans l&rsquo;ordre. Le client et le serveur utilisent le processus « Three-way handshake » pour établir la connexion.</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="723" height="191" src="https://www.pandawan.fr/wp-content/uploads/2025/01/image-3.png" alt="" class="wp-image-1312" srcset="https://www.pandawan.fr/wp-content/uploads/2025/01/image-3.png 723w, https://www.pandawan.fr/wp-content/uploads/2025/01/image-3-300x79.png 300w" sizes="auto, (max-width: 723px) 100vw, 723px" /></figure>



<p>Le premier échange consiste en un paquet SYN envoyé par le client au serveur, ce paquet demande l’établissement de la connexion. Le serveur renvoie une requête SYN/ACK avec les options de connexion. Le client répond en envoyant un paquet ACK. Ce message  indique au serveur qu’il a bien reçu les informations et qu’il est prêt à commencer les échanges.</p>



<h2 class="wp-block-heading" id="h-le-protocole-http">Le protocole HTTP</h2>



<p>La <a href="https://datatracker.ietf.org/doc/html/rfc1945">RFC1945</a> a standardisé le protocole HTTP en 1996.  Cette RFC décrit les méthodes de requêtes, les codes de statut et les en-têtes. Une seconde RFC, la <a href="https://datatracker.ietf.org/doc/html/rfc2616">RFC 2616</a>, publiée en 1999, ajoute des fonctionnalités qui permet de réduire la latence.</p>



<p>La version 2 du protocole HTTP ajoute des fonctionnalités de compression et de multiplexage de requêtes, ce qui améliore la vitesse de chargement. Elle intègre aussi une couche de sécurité imposant le chiffrement des requêtes. Actuellement, un travail sur la version 3 est en cours. En effet, cette nouvelle version s’appuiera sur le protocole QUIC au lieu de TCP. Ainsi le « Three-Way Handshake » sera supprimé, ce qui aura pour effet les requêtes. En observant les différentes versions du protocole, nous remarquons que l’accent est mis sur la rapidité d’exécution des requêtes HTTP et la sécurité.</p>



<h3 class="wp-block-heading" id="h-les-requetes-http-1-0">Les requêtes HTTP 1.0</h3>



<p>Une requête HTTP comprend une méthode qui spécifie l’action à effectuer sur une ressource. Dans la version HTTP/1.0, les méthodes prises en charge étaient :</p>



<ul class="wp-block-list">
<li><strong>GET</strong> : utilisée pour récupérer des informations depuis le serveur.</li>



<li><strong>POST</strong> : utilisée pour envoyer des informations au serveur pour une utilisation ultérieure.</li>



<li><strong>HEAD</strong> : utilisée pour ne renvoyer que les en-têtes d’une réponse HTTP.</li>
</ul>



<h3 class="wp-block-heading" id="h-les-requetes-http-1-1">Les requêtes HTTP 1.1</h3>



<p>Le protocole HTTP a été conçu pour l’échange de travaux scientifiques et non pour un usage commercial. Ces méthodes étaient suffisantes à l’époque. Cependant, avec l’essor commercial d’Internet, les quatre méthodes listées sont devenues insuffisantes. Il manquait la gestion des sessions, permettant, entre autres, à un utilisateur de s’identifier sur un site internet et de maintenir sa session active même lors de la navigation entre les pages. La version HTTP/1.1 a ajouté les méthodes suivantes :</p>



<ul class="wp-block-list">
<li><strong>PUT</strong> : utilisée pour envoyer des données à un serveur pour créer ou remplacer une ressource.</li>



<li><strong>DELETE</strong> : utilisée pour supprimer une ressource sur un serveur.</li>



<li><strong>TRACE</strong> : utilisée pour envoyer une requête pour déboguer.</li>



<li><strong>OPTIONS</strong> : utilisée pour découvrir les options disponibles pour une URL donnée.</li>



<li><strong>CONNECT</strong> : utilisée pour établir une connexion à travers un proxy.</li>



<li><strong>PATCH</strong> : utilisée pour envoyer des modifications partielles à une ressource sur le serveur..</li>
</ul>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-3 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="98" height="159" src="https://www.pandawan.fr/wp-content/uploads/2025/01/une-image-contenant-texte-graphiques-vectoriels-13.png" alt="Une image contenant texte, graphiques vectoriels Description générée automatiquement" class="wp-image-1305"/></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><strong><em>Bon à savoir&nbsp;:</em></strong></p>



<p>Dans la version http/2, les méthodes seront les mêmes que pour HTTP/1.1, la différence va être sur les fonctionnalités, permettant ainsi de traiter des requêtes multiples en simultanés.</p>
</blockquote>
</div>
</div>



<p>Le client recevra alors une réponse du serveur web contenant un statut sous la forme d’un code d’état, classé en cinq catégories :</p>



<ul class="wp-block-list">
<li><strong>La classe 1XX</strong> : indique que la requête a été reçue et bien interprétée, mais qu’elle n’a pas encore été traitée.</li>



<li><strong>La classe 2XX</strong> : indique que la requête a été traitée avec succès.</li>



<li><strong>La classe 3XX</strong> : indique que le serveur a besoin de plus d’informations pour traiter la requête (par exemple, une redirection vers une autre URL).</li>



<li><strong>La classe 4XX</strong> : indique que la requête contient une erreur.</li>



<li><strong>La classe 5XX</strong> : indique que le serveur a rencontré une erreur en tentant de traiter la requête.</li>
</ul>
<p>L’article <a href="https://www.pandawan.fr/serveur-web-la-base-du-www/">01 Serveur web et ses protocoles</a> est apparu en premier sur <a href="https://www.pandawan.fr">Pandawan</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
