Windows Server 2025 / Comment installer IIS et servir un site Web statique
Sur Windows Server 2025, Internet Information Services (IIS) peut afficher une page HTML après l'installation du rôle de serveur web et de la fonctionnalité de contenu statique. Pour créer un site distinct, configurez son dossier, son pool d'applications, sa liaison et ses droits de lecture, puis testez-le sur le serveur et depuis un autre client.
Préparez un serveur web séparé
IIS est le serveur web de Windows. Cet exercice sert une page HTML statique, sans base de données ni infrastructure applicative. Les applications PHP et ASP.NET demandent leurs propres composants d'exécution et leur propre procédure de déploiement.
Utilisez un serveur membre du domaine nommé WEB1 sur le réseau isolé du laboratoire, sans ajouter ce rôle à DC1 ou FS1. L'adresse d'exemple de WEB1 est 172.24.50.30/24 ; DC1, à 172.24.50.10, fournit le DNS pour le domaine ad.example.test. Vérifiez l'absence de conflit d'adresse et la capacité de l'hôte avant de poursuivre.
Sur WEB1, utilisez Windows PowerShell avec les droits d'administrateur et le Gestionnaire IIS. Le site s'appelle LabSite, son pool LabSitePool, son dossier est C:\Sites\LabSite et son port HTTP est 8080. Ne modifiez pas la liaison du site par défaut sur le port 80. Cet exercice reste limité au laboratoire, sans exposition à Internet.
Installez IIS et les fonctionnalités nécessaires
- Dans le Gestionnaire de serveur, choisissez Gérer → Ajouter des rôles et fonctionnalités et vérifiez que la cible est WEB1.
- Sélectionnez Serveur web (IIS) et les outils de gestion nécessaires.
- Sous Fonctionnalités HTTP communes, vérifiez Contenu statique et Document par défaut ; sous Intégrité et diagnostics, vérifiez Journalisation HTTP.
- Installez le rôle sans ajouter de composants d'exécution inutiles pour une page statique.
- Vérifiez le résultat et un éventuel redémarrage requis, puis ouvrez le Gestionnaire IIS avec inetmgr.
Vous pouvez aussi installer le rôle avec PowerShell. Si IIS est déjà présent, vérifiez d'abord l'état des fonctionnalités. Une installation réussie ne configure ni les autorisations du dossier ni l'accès au site depuis le réseau.
Install-WindowsFeature Web-Server -IncludeManagementTools
Get-WindowsFeature Web-Static-Content,Web-Default-Doc,Web-Http-Logging,Web-Mgmt-Console
Créez la page et un pool dédié
Si C:\Sites\LabSite existe déjà, arrêtez-vous et identifiez son usage avant de le modifier. Sinon, créez ce dossier et enregistrez l'exemple complet ci-dessous dans un fichier index.html encodé en UTF-8. Vérifiez que son extension réelle n'est pas index.html.txt.
<!doctype html>
<html lang="fr">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>LabSite</title></head>
<body><h1>Laboratoire du serveur web Windows Server 2025</h1><p>Cette page est servie par LabSite sur WEB1.</p></body>
</html>
- Dans Gestionnaire IIS → Pools d'applications, créez LabSitePool.
- Choisissez Aucun code managé, car ce site ne sert que des fichiers statiques.
- Dans Paramètres avancés, confirmez que l'identité est ApplicationPoolIdentity.
- Dans Propriétés du dossier → Sécurité, sélectionnez WEB1 comme emplacement et ajoutez IIS AppPool\LabSitePool.
- Accordez Lecture et exécution, Affichage du contenu du dossier et Lecture, tout en conservant les autorisations de SYSTEM et des administrateurs.
Une identité de pool d'applications IIS est un compte virtuel propre au pool. Séparez l'accès en écriture des personnes qui publient le contenu de l'accès en lecture du processus web. Ce processus n'a besoin ni de droits d'administrateur ni du contrôle total pour servir une page statique.
Configurez le site et l'identité anonyme
- Choisissez Sites → Ajouter un site web et indiquez LabSite, LabSitePool et C:\Sites\LabSite.
- Pour la liaison, choisissez http, l'adresse IP 172.24.50.30, le port 8080 et laissez le nom d'hôte vide.
- Ouvrez LabSite → Authentification → Authentification anonyme → Modifier et choisissez l'identité du pool d'applications.
- Vérifiez que la liste des documents par défaut contient index.html.
- Contrôlez la liaison, le chemin physique et l'état du pool, puis démarrez le site.
L'utilisateur anonyme IUSR diffère de l'identité du pool. Choisir explicitement l'identité du pool dans les paramètres d'authentification anonyme d'IIS permet d'utiliser les droits de lecture accordés ci-dessus. Ne corrigez pas une erreur d'autorisation en donnant des droits d'écriture à Everyone.
Sur WEB1, ouvrez http://172.24.50.30:8080/index.html, puis http://172.24.50.30:8080/. Les deux adresses doivent afficher la phrase de l'exemple. La documentation de New-Website décrit aussi le chemin du site, son port et son pool d'applications.
Vérifiez l'accès client et diagnostiquez la réponse
Après avoir vérifié que WEB1 utilise le profil de pare-feu Domaine, créez une règle entrante nommée Lab-IIS-HTTP-8080 pour TCP 8080 et limitez les adresses distantes à 172.24.50.0/24. Si le profil attendu n'est pas actif, recherchez la cause plutôt que d'étendre la règle à tous les profils et toutes les adresses.
Sur CLIENT1, testez le port et naviguez vers la même URL :
Test-NetConnection -ComputerName 172.24.50.30 -Port 8080
| Symptôme | À vérifier |
|---|---|
| Délai dépassé | Chemin réseau, pare-feu et écoute du port 8080 |
| 403.14 | Présence d'index.html et configuration du document par défaut ; n'activez pas l'exploration du répertoire pour contourner l'erreur |
| 401.3 | Identité utilisée pour l'accès anonyme et droits NTFS de lecture |
| 404 | Nom du fichier, extension et chemin physique du site |
| 503 | État du pool, protection contre les échecs rapides et événements |
Dans C:\inetpub\logs\LogFiles\W3SVC, repérez le dossier correspondant à l'identifiant du site et comparez l'heure des requêtes. Si l'accès local fonctionne mais pas celui de CLIENT1, vérifiez d'abord le réseau et le pare-feu, puis la réponse IIS. Après le laboratoire, supprimez seulement le site, le pool, la règle du port 8080 et le dossier de test, après avoir vérifié qu'ils ne sont plus nécessaires.




