Base de connaissances / Knowledge base

Comme libérer le port 80 d'une des adresses IP d'un serveur avec IIS en service (03.10.06)
Cet article explique comment désactiver la fonctionnalité de mise en pool du socket de Internet Information Services afin de permettre d'attribuer le port 80 de l'une des adresses IP à une autre application comme Apache2 par exemple.

How to Disable Socket Pooling

SUMMARY

You may need to disable socket pooling under the following conditions:
  • A low number of sites are being hosted.
  • There are special security concerns.
  • Another application or server has need of port 80 on an IP address.

MORE INFORMATION

Socket pooling causes Internet Information Services (IIS) to listen to all IP addresses, and this can present a possible security risk for secure domains with multiple networks. Also, bandwidth throttling and performance adjustments apply to all Web sites configured for the same port (for example, port 80). If bandwidth throttling or performance tuning is being done on a per-site basis, socket pooling must be disabled.

Because DisableSocketPooling is defined as a valid property in the IIS 6.0 metabase schema (MBSchema.xml), you can still set this property by using Adsutil.vbs, but this has no effect. The functionality in IIS 6.0 is part of the new kernel level driver HTTP.sys. To configure HTTP.sys, you must use Httpcfg.exe. For additional information about how to disable socket pooling in IIS 6.0, click the following article number to view the article in the Microsoft Knowledge Base:

813368 IIS 6.0: Setting Metabase Property DisableSocketPooling Has No Effect

To disable socket pooling, follow these steps:
  1. Open a command prompt and make sure you are in the X:\Inetpub\Adminscripts folder (where X is the IIS installation drive). To do this, type the following lines at the command prompt:

    X:

    CD\Inetpub\Adminscripts

  2. After you open the Adminscripts folder, type the following line at the command prompt:

    cscript adsutil.vbs set w3svc/disablesocketpooling true

  3. The command replies as follows:

    disablesocketpooling : (BOOLEAN) True

  4. Stop and start the IIS Admin service.
  5. Restart the WWW service.

Sous Windows 2003, il faut taper encore la ligne suivante: httpcfg delete iplisten -i adresse_ip
(cela nécessite les utilitaires qui sont sur le CD Windows 2003 server sous \SUPPORT\TOOLS\SUPTOOLS.MSI (et son fichier CAB SUPPORT.CAB)

Puis faire un NET STOP HTTP /Y
Suivi d'un NET START W3SVC

Produit concerné
Internet Information Services
Liens apparentés
Articles apparentés
Catégories / sous-catégories
Source de l'information
http://support.microsoft.com/default.aspx?scid=kb;EN-US;238131