.NET Framework 附带了两个 IIS 注册工具;一个用于标准系统,另一个用于 64 位系统。
用于 64 位系统的工具位于 Windows 文件夹下 Microsoft.NET 目录的 Framework64 目录中;例如,C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727 将包含该 IIS 注册工具。

aspnet_regiis [options]
选项说明

-c

将 ASP.NET 的客户端脚本(如客户端验证脚本)安装到每个 Internet 信息服务 (IIS) 站点目录的 aspnet_client 子目录中。

只安装与 Aspnet_regiis.exe 关联的 ASP.NET 版本的客户端脚本。

-disable

在 IIS 安全控制台中禁用 ASP.NET。

此选项只能与 -i-ir-r 选项结合使用。此选项不能在 IIS 6.0 之前的 IIS 版本中使用。

-e

从每个 IIS 站点目录的 aspnet_client 子目录中移除 ASP.NET 的客户端脚本。

只移除与 Aspnet_regiis.exe 关联的 ASP.NET 版本的客户端脚本。

-ea

从每个 IIS 站点目录的 aspnet_client 子目录中移除所有 ASP.NET 版本的客户端脚本。

-enable

在 IIS 安全控制台中启用 ASP.NET。

此选项只能与 -i-ir-r 选项结合使用。此选项不能在 IIS 6.0 之前或 ASP.NET 2.0 版之前的版本中使用。

-gauser

向指定用户授予 ASP.NET. 使用的 IIS 元数据库和其他目录的访问权限。

此选项不能在 ASP.NET 2.0 之前的版本中使用。

-i

安装与 Aspnet_regiis.exe 关联的 ASP.NET 版本,并更新 IIS 元数据库根目录和根目录下的脚本映射。

只更新使用早期 ASP.NET 版本的应用程序的脚本映射。使用新版本的应用程序不受影响。

-ir

安装与 Aspnet_regiis.exe 关联的 ASP.NET 版本,并仅在 IIS 中注册 ASP.NET。

此选项不更新脚本映射。若要安装 ASP.NET 并更新脚本映射,请使用 -i 选项。

-kpath

在指定的应用程序根路径及其子目录中,从所有 ASP.NET 应用程序中移除所有 ASP.NET 版本的脚本映射。

-knpath

仅在指定的应用程序根路径中,从 ASP.NET 应用程序中移除所有 ASP.NET 版本的脚本映射。

此选项不影响指定 path 的子目录中的应用程序。

-lk

列出包含 ASP.NET 脚本映射的所有 IIS 元数据库项的路径和版本。

不显示从父项继承 ASP.NET 脚本映射的项。

-lv

列出计算机上安装的所有 ASP.NET 版本的状态和安装路径。

-norestart

禁止在安装或更新 ASP.NET 脚本映射后重新启动 IIS 辅助进程。

如果将手动重新启动 IIS 辅助进程,则将此选项与 -i-r 选项一起使用。

-r

更新 IIS 元数据库中及其下面的所有脚本映射,使其指向与 Aspnet_regiis.exe 关联的 ASP.NET ISAPI 版本。

无论当前版本如何,都会更新现有的所有脚本映射,使其指向与 ASP.NET IIS 注册工具关联的 ASP.NET ISAPI 版本。

-spath

将脚本映射(该脚本映射指向与 Aspnet_regiis.exe 关联的 ASP.NET ISAPI 版本)安装到指定应用程序根路径及其子目录下的所有 ASP.NET 应用程序中。更新指定的路径中及其下面使用早期 ASP.NET ISAPI 版本的所有现有脚本映射。

-snpath

将脚本映射(该脚本映射指向与该工具关联的 ASP.NET ISAPI 版本)安装到指定应用程序根路径下的 ASP.NET 应用程序中。更新指定路径中使用早期 ASP.NET ISAPI 版本的所有现有脚本映射。

此选项不影响 path 的子目录中的应用程序。

-u

从计算机中卸载与 ASP.NET IIS 注册工具关联的 ASP.NET 版本。此 ASP.NET ISAPI 版本的现有脚本映射自动重新映射到其余已安装的 ASP.NET ISAPI 的最新版本。

-ua

从计算机中卸载所有 ASP.NET 版本。

-?

显示 ASP.NET IIS 注册工具的命令语法和选项。

配置选项

选项说明

-config+

允许对计算机上的 ASP.NET 配置进行远程访问。

-config-

禁止对计算机上的 ASP.NET 配置进行远程访问。

-pacontainer account

为指定用户或组 account 授予访问指定项 container 的权限。此参数采用下面的可选修饰符:

  • -pku   将默认的计算机容器替换为用户指定的容器。

  • -cspprovider   指定要使用的容器提供程序。

  • -full   指定应该添加完全访问权限而不是默认的只读访问权限。

-pccontainer

在指定容器中创建 RSA 公钥/私钥对。此参数采用下面的可选修饰符:

  • -sizekeySize   指定密钥大小。默认值为 1024 字节。

  • -pku   将计算机上的默认密钥容器替换为用户指定的容器。

  • -exp   指定必须可以导出的私钥。

  • -cspprovider   指定要使用的容器提供程序。

-pdsection

对配置节进行解密。此参数采用下面的可选参数:

  • -appvirtualPath   指定应该在包含路径的级别进行解密。

  • -locationsubPath   指定要解密的子目录。

  • -pkm   指定应该对 Machine.config 而非 Web.config 文件进行解密。

-pdfsection webApplicationDirectory

对指定物理(非虚拟)目录中的 Web.config 文件的指定配置节进行解密。

-pesection

对指定的配置节进行加密。此参数采用下面的可选修饰符:

  • -provprovider   指定要使用的加密提供程序。

  • -appvirtualPath    指定应该在包含路径的级别进行加密。

  • -locationsubPath   指定要加密的子目录。

  • -pkm   指定应该对 Machine.config 而非 Web.config 文件进行加密。

-pefsection webApplicationDirectory

对指定物理(非虚拟)目录中的 Web.config 文件的指定配置节进行加密。

-picontainer file

将 RSA 公钥/私钥对从指定的 XML file 导入指定的 container。此参数采用下面的可选修饰符:

  • -pku   将默认的计算机容器替换为用户指定的容器。

  • -exp   指定可以导出私钥。

  • -cspprovider   指定要使用的容器提供程序。

-prcontainer account

移除指定的用户或组 account 对指定的项 container 的访问权限。此参数采用下面的可选修饰符:

  • -pku   将默认的计算机容器替换为用户指定的容器。

  • -cspprovider   指定要使用的容器提供程序。

-pxcontainer file

将 RSA 公钥/私钥对从指定的容器导入指定的 XML 文件。此参数采用下面的可选修饰符:

  • -pku   将默认的计算机容器替换为用户指定的容器。

  • -cspprovider   指定要使用的容器提供程序。

-pzcontainer

删除指定的密钥容器。此参数采用下面的可选修饰符:

  • -pku   将默认的计算机容器替换为用户指定的容器。

当在一台计算机上安装了多个 ASP.NET 版本时,就说 ASP.NET 是并行运行的。在此安装中,Internet 信息服务 (IIS) 需要知道哪个 ASP.NET ISAPI (aspnet_isapi.dll) 版本应该处理 ASP.NET 应用程序中的页。与 ASP.NET 应用程序关联的 ASP.NET ISAPI 版本决定了该应用程序使用的 CLR 版本。在 IIS 中,ASP.NET 应用程序通过脚本映射与 ASP.NET ISAPI 版本关联。为了简化 ASP.NET 应用程序的配置过程,每个 ASP.NET 版本都附带了一个链接的 Aspnet_regiis.exe 版本。

ASP.NET IIS 注册工具 (Aspnet_regiis.exe)_IIS_03注意

每个 .NET Framework 版本都附带一个唯一的 Aspnet_regiis.exe 版本。因为该工具的每个版本只应用于与它关联的 .NET Framework 版本,所以务必使用该工具的正确版本对 ASP.NET 应用程序进行配置。

ASP.NET IIS 注册工具通常与 -s-sn 选项结合使用,以便将 ASP.NET 应用程序重新映射到与该应用程序关联的 .NET Framework 版本。使用 -s 选项,可以更新指定根路径及其所有子目录中的应用程序。如果不需要更新子目录中的应用程序,请使用 -sn 选项。若要同时更新计算机上现有的全部 ASP.NET 应用程序的脚本映射,请使用 -r 选项。

ASP.NET IIS 注册工具 (Aspnet_regiis.exe)_IIS_03注意

path 参数引用的是应用程序的根路径,而不是物理路径。例如 W3SVC/1/ROOT/SampleApp1

相反,通过使用 -k-kn 选项并指定应用程序的根路径,可以使用 ASP.NET IIS 注册工具从该应用程序中移除所有 ASP.NET 版本的脚本映射。如果指定的根路径从父根路径继承它的脚本映射,-k-kn 选项将无效。

ASP.NET IIS 注册工具还可以用于安装和卸载 ASP.NET 的链接版本。使用 -i 选项,可以安装 ASP.NET,还可以更新所有现有 ASP.NET 应用程序的脚本映射。使用 -ir 选项,可以安装 ASP.NET,但不更新脚本映射。若要卸载与该工具关联的 ASP.NET 版本,请使用 -u 选项。如果要从计算机中卸载所有 ASP.NET 版本,请使用 -ua 选项。

另外,可以使用 ASP.NET IIS 注册工具查看有关 ASP.NET 的信息。若要列出计算机上安装的所有 ASP.NET 版本的状态和安装路径,请使用 -lv 选项。如果要查看映射 ASP.NET 的所有 IIS 元数据库项的路径,请使用 -lk 选项。

使用 Aspnet_regiis.exe,可以安装和移除客户端脚本,如客户端验证。若要将与该工具关联的 ASP.NET 版本的客户端脚本安装到每个 IIS 站点目录的 Aspnet_client 子目录中,请使用 -c 选项。若要只移除与该工具关联的 ASP.NET 版本的客户端脚本,请使用 -e 选项。若要移除已安装的所有 ASP.NET 版本的客户端脚本,请使用 -ea 选项。

有关在 ASP.NET 中并行执行的更多信息,请参见 ASP.NET 中的并行 (Side-by-Side) 支持。有关脚本映射和应用程序根路径的更多信息,请参见http://www.microsoft.com/WindowsServer2003/iis/default.mspx 上有关 IIS 的文档。

下面的命令将脚本映射(这些脚本映射指向与该工具关联的 ASP.NET 版本)安装到 SampleApp1 应用程序及其所有子应用程序中。

aspnet_regiis -s W3SVC/1/ROOT/SampleApp1

下面的命令只更新 SampleApp1 应用程序的脚本映射,不影响子目录中的应用程序。

aspnet_regiis -sn W3SVC/1/ROOT/SampleApp1

下面的命令安装与 ASP.NET IIS 注册工具关联的 ASP.NET 版本,并更新所有现有 ASP.NET 应用程序的脚本映射。注意,只影响当前映射到早期 ASP.NET 版本的应用程序。

aspnet_regiis -i

下面的命令安装与该工具关联的 ASP.NET 版本,但不更新现有 ASP.NET 应用程序的脚本映射。

aspnet_regiis -ir

下面的命令显示计算机上安装的所有 ASP.NET 版本的状态和安装路径。