IIS Application Host Helper Service (AppHostSvc)
Updated: March 24, 2009
Applies To: Windows Server 2008 R2
The Internet Information Services (IIS) ApplicationHost Helper Service (AppHostSvc) enables IIS configuration history and application pool SID (security identifier) mapping. It enables the configuration history functionality by saving the ApplicationHost.config file to separate configuration history subdirectories at set intervals.
The following is a list of all aspects that are part of this managed entity:
The Internet Information Services (IIS) Application Host Helper Service requires access to a directory in which it can store temporary configuration files that it creates at run-time for application pools. The directory must be available to WAS and cannot be on a UNC path. If these conditions are not met, the Application Host Helper Service SID mapping functionality may be unavailable.
The ApplicationHost Helper Service (AppHostSvc) maintains a history of Internet Information Services (IIS) configuration by saving the ApplicationHost.config file to separate configuration history subdirectories. If you make a mistake when you modify the ApplicationHost.config file, you can restore an earlier version of the file from a configuration history subdirectory by copying the earlier version into the %Windir%\system32\inetsrv\config directory. You can specify the frequency with which AppHostSvc checks for configuration changes, the path of the directory that contains the subdirectories, and how many subdirectories to keep.
By default, the Application Host Helper Service checks for changes in the ApplicationHost.config file every two minutes. If it detects that the configuration has changed, it creates a backup. The default location for the configuration history files is %SystemDrive%\inetpub\history. AppHostSvc creates one subdirectory under this directory for each configuration file backup. By default, the maximum number of history subdirectories is 10. If the number of configuration history subdirectories reaches the maximum specified, the oldest subdirectory is deleted.
AppHostSvc is a runtime-independent service that does not require the Windows Process Activation Service (WAS) or the World Wide Web Publishing Service (W3SVC) to operate. AppHostSvc does not depend on any other service and its startup type is Automatic. If the ApplicationHost Helper Service is stopped, the configuration history feature will not work.
In Internet Information Services (IIS) 6.0, separate user accounts had to be created for application pools in order to isolate them. In IIS 7.0, mapped application pool SIDs (security identifiers) make this process easier. When a new Web site is created in IIS 7.0, the site receives a new application pool with the same name as the site. The Application Host Helper Service (AppHostSvc) dynamically creates a unique application pool SID based on the application pool name, and the name is mapped to the SID. Web site resources like files and directories can then be granted permissions by using the mapped application pool SID instead of separate user identities. This enables all application pools to run under the same default Network Service account, yet remain isolated.