Internet Information Services 使用的注册表项的说明

本文介绍 Windows 上Microsoft Internet Information Services (IIS)使用的注册表项。

原始产品版本: Internet Information Services
原始 KB 数: 954864

简介

本文还包含有关如何修改注册表的信息。 此注册表项列表不包括特定于 FTP 的注册表项,这些注册表项是 IIS 的新 FTP 服务器版本或 ASP.NET 的一部分。

重要

  • 在修改注册表之前,请确保备份注册表,并且知道如何还原注册表(如果出现问题)。 有关如何备份、还原的详细信息,请参阅 如何在 Windows 中备份和还原注册表。
  • 修改这些注册表项时,IIS 的行为可能会更改。

IIS 许多部分使用的常见注册表项

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Configuration\MaxWebConfigFileSizeInKB (REG_DWORD)

    注意

    如果将 IIS 7.0 和 IIS 7.5 配置为在 Windows Server 2008 x64 或 Windows Server 2008 R2 x64 上以 32 位模式运行,则注册表项如下所示:
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\InetStp\Configuration\MaxWebConfigFileSizeInKB (REG_DWORD)

    Nativerd.dll文件使用此注册表项的值来确定 Web.config 文件的最大允许大小(以 KB 为单位)。

    如果更改此密钥的值,则必须重启该过程。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\LastPriorityUPNLogon (REG_DWORD)

    此注册表项切换 IIS 进程尝试登录用户的顺序。 默认值为 0(false)。

    • 如果此值为 0,则用户主体名称(UPN)登录不是最后一个优先级。 IIS 首先使用 UPN 格式,然后是域字段和用户名字段。

    • 如果将此密钥设置为非零值,则会切换顺序,以便 IIS 先使用域字段和用户名字段,然后再切换 UPN 登录。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\UserTokenTTL (REG_DWORD)

    此注册表项控制 IIS 在释放缓存并重新创建缓存之前缓存用户令牌的时间长度。 缓存时间的默认值为 900 秒。 此密钥由工作进程和 Windows 进程激活服务(WAS)中的令牌缓存模块使用。

适用于 WAS 的注册表项

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WAS\Parameters\ConfigIsolationPath (REG_SZ)

    此注册表项指定 WAS 创建的临时应用程序池配置文件的文件夹路径。 此注册表项的默认值为 %systemdrive%\inetput\temp\apppools

    • 如果更改位置,必须确保本地计算机对文件夹具有完全访问权限。

    • Windows Vista 的发布版本中不提供配置隔离功能。 此注册表项在 Windows Vista 的发布版本中无效。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WAS\Parameters\AlwaysLogEvents (REG_DWORD)

    如果 WAS 出于某种原因检测到无效对象,则不会记录事件。 使用此注册表开关可以查看未记录的这些事件。 默认情况下,此值设置为 0,WAS 不会记录任何事件。 任何非零值都允许查看事件日志。

适用于 IISADMIN 服务的注册表项

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\IISADMIN\Parameters\EnableABOMapperLog (REG_DWORD)

    此注册表项使管理基对象(ABO)映射器能够记录事件。 将此键设置为默认值 0 时,ABO 映射器可能不会记录任何信息。 如果注册表值设置为非零值,则会在位置 %windir%\system32\abomapper.log创建日志文件。

    此外,ABO 映射器在 Abomapper.log 文件中写入调试信息。 更改此注册表项的值时,必须重启 IISAdmin 服务。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\IISADMIN\Parameters\LazyWriteTime (REG_DWORD)

    此注册表项可帮助 ABO 映射器在 ABO 映射器将更改保存到硬盘之前缓冲配置更改的短时间。

    • 此注册表项的默认值为 0。 默认值指示延迟编写器已关闭。

    • 如果将此值设置为大于 0 的值,则会打开延迟编写器。 延迟写入时间(以毫秒为单位)等于注册表中设置的时间。

适用于 IIS 辅助进程(W3WP)的注册表项

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\ConfigPollMilliSeconds (REG_DWORD)

    此注册表项的默认值为 0。

    • 当此值设置为 0 时,将 ConfigPollMilliSeconds 禁用参数。 配置系统依赖于更改通知来跟踪配置文件的更改。

    • 此键的正值指示配置系统检查配置文件的上次修改时间,每 N 毫秒一次。 配置系统不使用目录监视器。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\ObjectCacheTTL (REG_DWORD)

    用户模式文件缓存和内核模式输出缓存使用此注册表项。 两个缓存每秒 ObjectCacheTTL 都会运行一个散文服务器操作。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\DisableMemoryCache (REG_DWORD)

    将此注册表项设置为非零值时,将禁用文件缓存。 此键的默认值为 0。 设置默认值后,将启用文件缓存。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MaxCachedFileSize (REG_DWORD)

    文件缓存使用此注册表项来确定可缓存的文件的最大大小。 文件大小以字节为单位。 此密钥的默认值为 256 KB。 如果文件大小大于 256 KB,则无法缓存该文件。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MaxCachedFileSizeInMB (REG_DWORD)

    注册表项的值 MaxCachedFileSize 是最大文件缓存大小(以字节为单位)。

    • 此注册表项值不能设置为超过 4 GB。 可用于 MaxCachedFileSizeInMB 设置缓存超过 4 GB 的最大文件大小。

    • 如果同时定义了这MaxCachedFileSizeMaxCachedFileSizeInMB个值,则有效的最大缓存文件大小是这两个值的总和。

    • 默认值 MaxCachedFileSize 为 256 KB。 如果仅定义值 MaxCachedFileSize,则有效最大大小将增加 256 KB。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MemCacheSize (REG_DWORD)

    此注册表项指定工作进程中文件缓存使用的最大内存量。

    • 此注册表项的默认值为 0。 默认值指定缓存大小是动态确定的。 此注册表项尝试估计可用的物理内存和总虚拟内存。

    • 如果将此注册表项的值设置为 0,则会将对象保存在缓存内存中的时间长度调整为注册表项中的 ObjectCacheTTL 值。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MaxOpenFiles (REG_DWORD)

    此注册表项的默认值为 0。 值为 0 指定无限数。 文件缓存使用注册表项中的 MaxOpenFiles 值来确定要缓存的文件数。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\DoDirMonitoringForUnc (REG_DWORD)

    如果将注册表项值设置为 1,则会启用对通用命名约定 (UNC) 路径的目录监视。 默认情况下,文件缓存不会对 UNC 文件使用更改通知。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\FileAttributeCheckThreshold (REG_DWORD)

    文件缓存每隔一秒 FileAttributeCheckThreshold 检查 UNC 文件的上次修改时间,以检测文件更改。 此注册表项的默认值为 5 秒。 用户模式缓存和内核模式输出缓存使用此密钥来确定具有虚拟文件映射处理程序的文件必须保留在响应缓存中的时间长度。 具有虚拟映射处理程序的文件的 resourceType 值设置为“未指定”。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\FlushTokenCache (REG_DWORD)

    如果将此注册表项值设置为 1,令牌缓存模块将注册更改通知。 值为 1 会刷新令牌缓存。 必须将值重置为 0。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\HttpResponseCacheTTL (REG_DWORD)

    此注册表项定义 Http.sys 响应缓存生存时间(TTL)。 默认值为 900 秒。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\OutputCacheTTL (REG_DWORD)

    用户模式输出缓存将此注册表项的值用作 TTL 设置。 清理器每秒运行一次 TTL 以从缓存中删除内容。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\EnableTraceMethod (REG_DWORD)

    协议支持模块(Protsup.dll)读取此注册表项。 仅当此注册表项设置为非零值时,才会回复使用 Trace 谓词的请求。 如果未设置或设置为 0,则跟踪请求将返回为 404。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\DigestPartialContextCacheTTL (REG_DWORD)

    客户端首次连接到需要摘要式身份验证的网站时,会收到初始质询。 此初始质询基于必须保留的部分安全上下文,客户端才能完成摘要式身份验证握手。

    通过 DigestPartialContextCacheTTL 注册表项,可以设置用于控制 IIS 必须保留部分上下文的时间长度的超时值。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\DigestContextCacheTTL (REG_DWORD)

    成功摘要式身份验证握手后,将保留完整的安全上下文。 如果摘要式身份验证握手处于非活动状态,则会刷新完整的安全上下文。 DigestContextCacheTTL注册表项控制必须存储完整安全上下文的时间长度。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\DontFlushCachedIsapiResponses (REG_DWORD)

    此注册表项的默认值为 false。 如果将此值设置为非零值,模块将 ISAPI 调用 SetKernelInvalidatorSet 该字段。

    有关此注册表项的详细信息,请参阅 创建日志文件以排查 IIS 中的 ABO 映射器错误。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\ForwardServerEnvironmentBlock (REG_DWORD)

    通用网关接口 (CGI) 处理程序使用此注册表项来确定处理程序是否必须将在工作进程上定义的所有环境变量转发到 CGI 进程。

    此注册表项的默认值为 true。 如果将此注册表项值设置为 0,CGI 处理程序不会将环境块转发到 CGI 进程。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\MaxConcurrentCgisExecuting (REG_DWORD)

    此注册表项的默认值为 256。 CGI 处理程序使用此注册表项来确定可同时运行的 CGI 应用程序的最大数量。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\DoNotKillCgiOnRequestEnd (REG_DWORD)

    注册表项的默认值为 false。 可以将值设置为 true。 true 的值指示 CGI 处理程序在请求结束时不终止进程。

适用于 ASP 页的注册表项

以下注册表项适用于 Active Server Pages (ASP) Internet Server API (ISAPI)。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\F5AttackDetectionEnabled (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\HangDetRequestThreshold (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\HangDetThreadHungThreshold (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\HangDetConsecIllStatesThreshold (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\HangDetEnabled (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\EnableChangeNotificationForUNC (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\FileMonitoringEnabled (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\FileMonitoringTimeoutSeconds (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\MaxCSR (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\MaxCPU (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\DisableOOMRecycle (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\DisableLazyContentPropagation (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\ThreadMax (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\DisableComPlusCpuMetric (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\AspMaxResponseHeaderLength (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\AspMaxPropertyStringLength (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\DisableCachedResponseOnUNCAccessFailure (REG_DWORD)

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ASP\Parameters\DisableCertificateBlobAsArray (REG_DWORD)

    Certificates 二进制大型对象 (BLOB) 作为数组返回。 如果程序无法处理数组,则可以更改此行为。 此密钥适用于 IIS 管理器和 Web 管理服务(WMSVC)。

适用于 IIS 管理器和 WMSVC 的注册表项

  • HKEY_LOCAL_MACHINE\Software\Microsoft\Inetmgr\Parameters\IncrementalSiteIDCreation (REG_DWORD)

    此注册表项的默认值为 0。 值为 0 表示未启用增量站点标识符。 每次创建网站时,Inetmgr.exe程序都会读取此密钥。 更改此密钥后,无需重启Inetmgr.exe程序。

以下注册表项用于存储 WMSVC 进行远程管理所需的设置。

注意

如果对密钥进行任何更改,则必须重启 WMSVC。 必须使用 IIS 管理器更改密钥的值。

有关 IIS 管理器的远程管理的详细信息,请参阅 IIS 管理器的远程管理

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\IPAddress (REG_SZ)

    此注册表项的默认值为 *。 此值指示所有未分配的 IP 地址。

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\Port (REG_DWORD)

    如果未为此键指定值,则端口号为 8172。

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\RequiresWindowsCredentials (REG_DWORD)

    此注册表项的默认值为 0。 默认值指示可以使用 Windows 用户和 IIS 管理器用户。 如果将键值设置为 1,则仅启用 Windows 用户。

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\EnableLogging (REG_DWORD)

    此注册表项的默认值为 1。 默认值指示已启用 WMSVC 日志记录。 如果将键值设置为 0,则会禁用 WMSVC 日志记录。

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\LoggingDirectory (REG_SZ)

    此注册表项的值是日志文件位置。 默认位置为 %systemdrive%\inetpub\logs\wmsvc

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\EnableRemoteManagement (REG_DWORD)

    此注册表项的默认值为 0。 默认值指示远程管理功能已禁用。 必须将此项值设置为 1 才能启用远程管理功能。

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\RemoteRestrictions (REG_SZ)

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\SslCertificateHash (REG_BINARY)

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server\SelfSignedSslCertificateHash (REG_BINARY)

适用于 W3TP 的注册表项

注意

这些密钥会影响 WAS 和工作进程使用的线程池管理器。 W3tp.dll是 IIS 线程池库使用的文件。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MaxPoolThreads (REG_DWORD)

    此注册表项值指定可以动态调整的最大线程数。 默认值为 20 * 处理器数。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\PoolThreadLimit (REG_DWORD)

    此注册表项指定绝对最大线程计数。 最小值为 64,最大值为 256。 默认值是根据可用的物理内存计算的。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\ThreadTimeout (REG_DWORD)

    此键的默认值为 1,800 秒。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\ThreadPoolStartupThreadCount (REG_DWORD)

    如果进程数小于 4,则此键的默认值为 4。 如果进程数超过 4,则此键的值等于进程数。 此值指定计算机启动时必须启动的线程数。 小于 1 的值被解释为 1。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\ThreadPoolMaxCPU (REG_DWORD)

    此键的默认值为 95。 如果 CPU 使用率超过 95,则无法创建新线程。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\ThreadPoolStartDelay (REG_DWORD)

    默认值为 1 秒钟。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\ThreadPoolExactThreadCount (REG_DWORD)

    此键的默认值为 0。 默认值指定未设置确切的线程计数值。 如果初始线程计数值设置为 0,则无法动态更改线程计数。

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MaxConcurrency (REG_DWORD)

    此键指定可以同时处理 I/O 的线程数。 默认值为 0。 值为 0 使正在运行的线程数与系统中的处理器数相同。

IIS 中的新注册表项

参考

有关如何在 IIS 中创建日志文件的详细信息,请参阅 创建日志文件以排查 IIS 中的 ABO 映射器错误。