Clients receive a "service unavailable" error message in their Web browsers when you run many application pools under separate identities in IIS (831135)



The information in this article applies to:

  • Microsoft Internet Information Services version 6.0

Important This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows Registry

SYMPTOMS

When you run multiple application pools under different custom identities in Microsoft Internet Information Services (IIS), some worker processes may not initialize correctly. When this issue occurs, clients may receive a "service unavailable" error message when they try to visit Web pages that those application pools host.

This problem does not occur when you use the three predefined identities. The predefined identities are Network Service, Local Service, and Local System.

CAUSE

Together with each worker process that IIS creates under a separate identity, the system creates a new desktop object by allocating memory from the configured desktop heap. This issue occurs because, when that heap has been exhausted, IIS cannot create more worker processes. Clients then receive the "service unavailable" error message in their Web browsers when they try to visit Web sites that those application pools host.

RESOLUTION

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

To resolve this issue, add the UseSharedWPDesktop registry key to your computer that is running IIS. This registry key permits all worker processes to run in one shared desktop, regardless of their worker process identities.

To add the UseSharedWPDesktop registry key:
  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate the following registry key:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC

  3. Right-click Parameters, point to New, and then click DWORD Value.
  4. Type UseSharedWPDesktop.
  5. Set the value for this new key to 1.
  6. Quit Registry Editor, and then restart IIS.

STATUS

This behavior is by design.

Modification Type:MinorLast Reviewed:10/15/2004
Keywords:kbprb KB831135 kbAudITPRO