La définition de la propriété de métabase DisableSocketPooling n'a aucun effet

Traductions disponibles Traductions disponibles
Numéro d'article: 813368 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

Lorsque vous démarrez Internet Information Services (IIS) 6.0 sur Microsoft Windows Server 2003, IIS se lie à toutes les adresses IP sur le serveur, pas seulement celles attribuées à des sites Web. Ceci peut être le cas même si vous avez défini la propriété de métabase DisableSocketPooling avec la valeur Vrai.

Cause

Pour permettre à des applications d'utiliser le même port sur des adresses IP différentes, vous devez utiliser un nouvel utilitaire, Httpcfg.exe. Httpcfg.exe est inclus dans le fichier Support.cab situé dans le dossier Support\Tools du CD-ROM Windows Server 2003.

Résolution

Pour installer les outils de support de Microsoft Windows

  1. Insérez le CD-ROM Windows Server 2003 dans le lecteur de CD-ROM ou de DVD-ROM.
  2. À l'ouverture du CD-ROM, cliquez sur Effectuer des tâches supplémentaires.
  3. Cliquez sur Parcourir ce CD.
  4. Double-cliquez sur Support.
  5. Double-cliquez sur Tools.
  6. Double-cliquez sur SUPTOOLS.MSI.
  7. Cliquez sur Suivant, tapez les informations appropriées dans les zones Nom et Organisation, cliquez sur Suivant, puis à nouveau sur Suivant sur l'écran suivant.
  8. Cliquez encore une fois sur Suivant pour démarrer l'installation.
  9. Cliquez sur Terminer.

Pour ajouter une adresse IP à la liste d'inclusions IP

  1. Cliquez sur Démarrer, puis sur Exécuter.
  2. Tapez cmd, puis cliquez sur OK pour ouvrir une invite de commandes.
  3. Tapez la ligne suivante où xxx.xxx.x.x est l'adresse IP que vous souhaitez ajouter :
    httpcfg set iplisten -i xxx.xxx.x.x
    Lorsque cette commande s'exécute correctement, Httpcfg renvoie le message suivant :
    HttpSetServiceConfiguration s'est terminé par 0

    Pour afficher des codes d'état supplémentaires, reportez-vous à l'aide de Httpcfg.
  4. Après avoir ajouté l'adresse IP, utilisez la commande suivante pour la répertorier :
    httpcfg query iplisten
    Httpcfg retourne le message suivant :
    IP :xxx.xxx.x.x
  5. À partir de l'invite de commandes, arrêtez le service HTTP et ses services dépendants. Pour cela, tapez la commande suivante à l'invite de commandes :
    net stop http /y
  6. À partir de l'invite de commandes, redémarrez le service HTTP et ses services dépendants. Pour cela, tapez la commande suivante à l'invite de commandes :
    net start w3svc
    Remarque Lorsque vous démarrez w3svc, tous les services arrêtés lors de l'arrêt du service HTTP démarrent.

Statut

Ce comportement est voulu par la conception même du produit.

Plus d'informations

IIS 5.0 utilise la propriété de métabase DisableSocketPooling pour permettre aux applications d'accéder au même port via des adresses IP différentes. Si vous définissez cette propriété avec la valeur Vrai, ces applications peuvent exister sur la même installation Microsoft Windows 2000.

Étant donné que la propriété DisableSocketPooling est définie comme valide dans le schéma de métabase IIS 6.0 (MBSchema.xml), vous pouvez toujours définir cette propriété à l'aide de l'outil Adsutil.vbs, mais cela n'a aucun effet. Dans IIS 6.0, la fonctionnalité fait partie du nouveau pilote de niveau noyau HTTP.sys. Pour configurer HTTP.sys, vous devez utiliser Httpcfg.exe.

Dans IIS 5.0, l'écouteur TCP est Winsock. Winsock utilise des sockets et IIS est lié aux performances et à l'évolutivité de l'API Winsock. La mise en pool des sockets a été introduite pour résoudre des problèmes d'utilisation élevée des ressources dans Internet Information Server (IIS) 4.0, dans lesquels de nombreux sites Web utilisaient des adresses IP individuelles.

Pour résoudre ce problème d'évolutivité, IIS 5.0 utilise la mise en pool des sockets pour permettre le partage des ressources. La mise en pool des sockets permet de doubler ou de tripler le nombre de sites pouvant être exécutés sur un serveur spécifique avec des adresses IP uniques. La propriété DisableSocketPooling a également été introduite dans IIS 5.0 et est utilisée lors de l'installation d'une autre application utilisant un port sur lequel IIS est à l'écoute par défaut (par exemple, le port 80).

Dans IIS 6.0, HTTP.sys est l'écouteur TCP et HTTP.sys n'utilise pas l'API Winsock. Les sockets ne sont pas une propriété configurable. HTTP.sys utilise une liste d'inclusions IP. Par défaut, cette liste est vide et IIS écoute sur toutes les adresses IP. Vous pouvez spécifier les adresses IP sur lesquelles IIS est à l'écoute en les ajoutant à la liste d'inclusions IP.

Important La liste d'inclusions IP est lue lors du démarrage du service HTTP. Si vous modifiez la liste, vous devez redémarrer le service.

Remarque Les services HTTP et HTTP SSL sont des services distincts. Le service HTTP n'apparaît pas dans la liste de services et il doit être redémarré à une invite de commandes. Pour cela, procédez comme suit :
  1. Cliquez sur Démarrer, sur Exécuter, puis tapez cmd pour ouvrir une invite de commandes. À l'invite de commandes, tapez net stop http /y, puis appuyez sur ENTRÉE. Ceci arrête le service HTTP Secure Sockets Layer (SSL) et les services de publication World Wide Web car ils sont dépendants du service HTTP.
  2. Pour démarrer le service HTTP, à l'invite de commandes, tapez net start w3svc. Ceci démarre les services HTTP SSL et HTTP.
Après avoir ajouté des adresses IP à la liste d'inclusions IP, vous devez ajouter chaque adresse IP utilisée par un site Web. Si vous liez un site Web à une adresse IP qui ne figure pas dans la liste, le site Web ne démarre pas.

Références

Pour obtenir de l'aide pour utiliser cette commande, reportez-vous à l'aide en ligne de Httpcfg. Pour accéder à l'aide en ligne de Httpcfg, tapez Httpcfg /? à une invite de commandes ou effectuez les procédures suivantes :
  1. Cliquez sur Démarrer.
  2. Cliquez sur Tous les programmes.
  3. Cliquez sur Outils de support de Windows.
  4. Cliquez sur Aide des Outils de support.
  5. Cliquez sur H sous Liste alphabétique des outils par nom de fichier.
  6. Double-cliquez sur Httpcfg.exe ( HTTP Configuration Utility).
Pour plus d'informations sur la propriété DisableSocketPooling, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
238131 Comment faire pour désactiver la mise en pool des sockets

Propriétés

Numéro d'article: 813368 - Dernière mise à jour: mardi 4 décembre 2007 - Version: 5.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Internet Information Services 6.0
Mots-clés : 
kbhowto KB813368
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com