IIS - Internet Information Services

IIS - Internet Information Services

Rôle

Guide pour l'installation configuration de Microsoft IIS 7.5 et ultérieur en vue de l'utilisation du WIService

Configuration

Les prérequis pour un web server Windows sont les suivants :

  • Os : Windows 2012 R2 minimum.
  • DMZ : Le serveur web doit se situer dans une DMZ (séparation des autres machines/serveurs du réseau, par sécurité)
  • IIS 8.5
  • Powershell 5
  • Espace disque : 60Gb
  • Mémoire : 8Gb
  • Processeur 2VCPU
  • réseau interne (“Integrix”) → serveur web
  • NAT de l'extérieur (mais limité à partir de notre range IP 194.154.215.241/28 soit 194.154.215.241 à 194.154.215.254 ) → serveur web,
  1. http (TCP/80) :
    • réseau interne (“Integrix”) → serveur web
    • NAT de l'extérieur → serveur web
  2. https (TCP/443) (dans ce cas, il faudra un certificat SSL) :
    • réseau interne (DMZ “Integrix”) → serveur web
    • NAT de l'extérieur → serveur web
  3. WIservice (TCP/1505 et TCP/1506) :
    • réseau interne (“Integrix”) → serveur web, pas d'accès à partir d'internet

Installation de IIS

  • Sous Windows, allez dans Paramètres, Panneau de configuration, Programmes, puis Activer ou désactiver des fonctionnalités Windows
  • Dans l'écran suivant, descendez sur Internet Information Services, cochez la case et cliquez sur OK
  • L'installation va se lancer et le service sera installé
  • Redémarrez le poste
  • Vous pouvez accéder à la console de gestion IIS en cliquant sur Paramètres, Panneau de configuration, Système et sécurité, Outils d'administration, Gestionnaire des services Internet (IIS)
  • Vous obtenez un écran du type :





Installation de IIS avec Windows serveur 2012

Aller sur le Server Manager et aller sur Manage → Add roles and Features:




Suivre ensuite l'installation.

Installation des composants supplémentaires

Via Web Platform

Il n'est plus possible d'installer les modules IIS via web platform depuis le 31 décembre 2022.

Voir détails ici : https://www.microsoft.com/web/downloads/platform.aspx

Il faut plusieurs composants gratuits supplémentaires pour faire fonctionner IIS avec le WIService. Pour les installer, depuis la fenêtre IIS, clquez sur Obtenir de nouveaux composants Web Platform dans l'onglet Actions (à droite de l'écran). Si WebPlatform n'est pas installé, son installation sera proposée automatiquement. Une fois Web Platform lancé :

  • Allez dans l'onglet Produits
  • Choisissez la rubrique Serveur dans le menu
  • Ajoutez Réécriture d'URL 2.0
  • Ajoutez IIS: Redirection HTTP
  • Ajoutez Application Request Routing 3.0
  • Validez l'installation
Pour installer les composants avec le module “Web platform” de IIS, vous devez avoir accès à internet et avoir le droit de télécharger les composants.

Dans le cas contraire, vous pouvez télécharger les msi depuis une autre poste.
Si vous avez IIS 7 ( WIndows 10 par exemple), il est possible que l'installation des composants “Réécriture d'URL 2.0” et “Application Request Routing 2.5” ne fonctionne pas.
Vous devez passer par votre moteur de recherche pour trouver le bon msi de ces composants.

Exemple :

Manuellement

Allez sur File Explorer et aller sur le chemin \\192.168.0.3\dev\Logiciels_install\WIService\IIS module

Récupérer les deux fichiers MSI et les executer

Configuration du site et droits d'accès

Répertoire

Sur le serveur, créez un Répertoire qui servira pour le site web (Dans notre exemple ce sera C:/DevWeb).
Une fois le répertoire créé, il faut donner les droits à l'utilisateur anonyme de IIS. Pour ce faire, clic droit sur le répertoire, puis Propriétés, Sécurité, Modifier, Ajouter…, saisissez IUSR puis validez. Refaites la même manipulations pour l'utilisateur <nom_de_l'ordinateur>\IIS_IUSRS et validez puis toutes les fenêtres. Vous devez avoir un résultat qui ressemble à ça :

Sous IIS

Retournez sur la console IIS puis dans le treeview à gauche, allez cliquer sur Sites. Dans l'onglet Actions, cliquez sur Ajouter un site Web…

Vous obtenez un formulaire à remplir :

  • Nom du site : Au choix tant que c'est parlant
  • Chemin d'accès physique : Le répertoire créé précédemment
  • Liaison : Ici, de base, IIS redirige tout le flux http vers ce site, mais on peut filtrer à l'aide d'adresses IP, d'url, ou des deux. Pour le test on laisse à vide, mais dans le cas de multiples sites web hébergés sur un seul IIS, c'est ici qu'il faut établir la redirection vers le bon répertoire.
  • Validez la saisie, le site est maintenant installé et démarré.
  • Pour le tester, mettez une page html basique dans le répertoire, puis sous IIS, cliquez sur Parcourir le site Web, vous obtenez alors votre site de test opérationnel.

FAQ 1
  1. Pascal Pontoise 07/09/2016 10:58
  • Pas d'affichage page WEB. Erreur :
Internet Information Services (IIS) Manager - The process cannot access the file because it is being used by another process. (Exception from HRESULT: 0x80070020)
  • La cause est que le port 80 est utilisé par une autre application.
    • rechercher au cmd :
netstat -aon | find ":80" 
netstat -aon | find ":443"
  • résultat : TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 3604
  • Alors la tache 3604 de Windows utilise le port.
  • Pour moi, le programme était Skype. J'ai dé-activer la coche entrante.

Règles de redirection et Proxy reverse

La suite de ce guide présuppose que vous avez installé le service Wi sur le serveur et qu'il est démarré

Vous pouvez bien sûr trouver des exemples de réécritures d'url sur internet.
Exemple : http://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module

Les composants que nous avons installé précédemment vont servir à effectuer les redirections nécessaires au fonctionnement des wi-services.

  • Pour faire les redirections, il y a deux possiblités :
    • A. Copier les règles en copiant le fichier web.config dans le répertoire “www” de votre site IIS.
      C'est la solution qu'il faut utiliser si vous avez déjà votre fichier web.config de créé.
    • B. Ajouter les règles manuellement depuis le menu “Ajouter des règles de IIS.
      Chaque règle créé sera ajouté dans le fichier web.config.

A. Copier les règles

  • 1. Copier votre fichier web.config dans le chemin physique de votre site IIS.
    Exemple de fichier web.config
    Pour connaitre le chemin physique :

  • 2. Enable proxy.

B. Ajouter les règles manuellement

Dans un premier temps, nous allons nous assurer que toutes les urls contenant ”/wiapp“ soient redirigées vers le service wi.

Dans la console IIS, sur votre Site, double-cliquez sur , puis sur Ajouter des règles. Il faut alors choisir proxy inverse

Lorsque vous cliquez sur cette règle, IIS va vous demander si vous souhaitez activer le request routing. Cliquez sur oui, vous arrivez ensuite sur le formulaire à remplir.

Peu importe ce que vous saisissez à ce stade, le but est juste de créer 2 règles et d'activer le request routing. Une fois le formulaire rempli, validez la saisie. De retour sur l'écran des règles, vous voyez deux nouvelles règles, ReverseProxyInboundRule1 et ReverseProxyOutboundRule1.

Cliquez sur la règle Inbound, puis sur Modifier…

Il est préférable de mettre “127.0.0.1” au lieu de localhost dans les réécriture d'url car l'appel des WS prend sur la plupart des serveurs avec IIS 1 secondes de plus avec localhost.

Une autre solution est de désactiver IPv6

Redirection par application

Maintenant que les redirections de base sont réalisées, la suite dépend de l'application (pool, hostname) que vous souhaitez mettre en place. Dans l'exemple suivant, l'url que nous souhaitons appliquer à ce client est /aca. Toutes les url sur le site web contenant /aca doivent donc faire appel à notre wi-service.

Nous ajoutons donc dans IIS une nouvelle règle de redirection vierge que nous remplissons comme suit :

Dans le modèle, nous choisissons donc de rediriger la chaîne “aca” pour réécrire l'url avec le hostname “ingeteldev2” et le exec “acacontroler”. Nous faisons précéder cette redirection d'un /wiapp (qui fera appel à la règle précédemment établie de redirection vers le wi). le {R:1} sert à transmettre au wi le reste de la requête, c'est à dire ce qui suit le /aca dans l'url d'origine.

Dans notre cas, je propose de ne pas mentionner le w3hostname. S'il n'est pas mentionné, le WIService prendra “Default” par défaut.

Validez la saisie. Si vous testez directement, vous verrez que ça ne fonctionne pas. En effet, dans la liste des règles, celle que vous venez d'ajouter s'est mise en fin de liste. Or nous souhaitons faire appel à la règle précédemment écrite APRES la nouvelle règle. Dans l'écran des règles, il faut donc placer la nouvelle règle au dessus de la règle de base :

Et voilà, le serveur IIS est configuré et fonctionnel.

Troubleshooting

Error 500.52 - URL Rewrite Module Error

Error 502 - Le serveur Web a reçu une réponse erronée lors de son utilisation en tant que passerelle ou serveur proxy.

The process cannot access the file because it is being used by another process

  • Message d'erreur : The process cannot access the file because it is being used by another process. (Exception from HRESULT: 0x80070020)
  • La cause : le port 80 est utilisé par une autre application.
  • Résolution :
    netstat -aon | find ":80" 
    netstat -aon | find ":443"
    => CP    0.0.0.0:80            0.0.0.0:0              LISTENING       3604 
    • Exemple d'utilisation du port par Skype. Désactiver la coche “Utilisation les ports 80 et 443…”.
public/wi/installation/iis.txt · Dernière modification: 22/01/2024 08:42 par Jean Christophe Dewalque
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki