代码之家  ›  专栏  ›  技术社区  ›  joshcomley

Windows7上等效的“aspnet-regiis-lk”是什么?

  •  5
  • joshcomley  · 技术社区  · 14 年前

    或者:如何在Windows7中找到IIS元数据库路径?

    我以前只是跑步 aspnet_regiis -lk ,但根据 aspnet_regiis 帮助…

    1 回复  |  直到 14 年前
        1
  •  5
  •   Artiom Chilaru    14 年前

    这是因为从Windows Vista开始,新版本的IIS(IIS 7)就已经发布,这在很多方面与旧的IIS体系结构有很大的不同。

    要控制新的IIS,您应该使用IIS管理器(UI),或者如果需要控制台工具,请查看C:\windows\system32\inetsrv\appcmd.exe

    如果要列出应用程序池及其.NET版本:

    > appcmd list apppool
    APPPOOL "FlexLabs Bak" (MgdVersion:v4.0,MgdMode:Integrated,state:Stopped)
    APPPOOL "OpenIdTest" (MgdVersion:v2.0,MgdMode:Integrated,state:Started)
    APPPOOL "TestApp" (MgdVersion:v4.0,MgdMode:Integrated,state:Started)
    

    获取IIS中的应用程序列表:

    > appcmd list app
    APP "FlexLabs/" (applicationPool:FlexLabs)
    APP "TestApp/" (applicationPool:TestApp)
    

    获取网站列表:

    > appcmd list site
    SITE "TestApp" (id:4,bindings:http/*:82:,state:Started)
    

    (注意:这些是示例,不是我的机器的所有实际数据:p)

    当然,它可以比列表做得更多。在某些方面,它比IIS管理器强大得多。
    你有什么特别的要求吗?

    UPD: 从这里退出: http://mvolo.com/blogs/serverside/archive/2007/07/21/Anatomy-of-an-IIS7-configuration-path.aspx

    如果您使用过IIs6和以前版本的IIS,那么您很可能熟悉IIS元数据库路径。你知道,那些看起来像lm/w3svc/1/root的。这些元数据库路径用作识别IIS网站层次结构的一部分或其中的URL的机制,以便读取/写入其配置设置。
    […]
    iis7根据.NET框架/asp.net也使用的XML配置文件的分布式层次结构,使用全新的配置系统重新定义元数据库。这个配置系统与元数据库有根本不同

    一定要看看这篇文章,因为我认为这正是你在这个案例中所寻找的。

    此外,请在此处查看有关它的更多信息: http://learn.iis.net/page.aspx/125/metabase-compatibility-with-iis-7/ 基本上,您可以安装“IIS 6元数据库兼容性”服务器角色,并使用一些旧工具和脚本对其进行一些控制:)