【问题标题】:Automated creation of IIS 6.0 websites [closed]自动创建 IIS 6.0 网站 [关闭]
【发布时间】:2010-12-23 10:35:55
【问题描述】:

我们有 Web 应用程序门户,可托管多个应用程序,每个应用程序都有自己的 IIS 网站。因此,每次我们采用另一台机器来运行我们的代码时,无论是开发人员工作站还是服务器,我们都必须为我们的每个应用程序手动创建所有网站(当然,这个列表还在不断增长)。是否有一个 API 调用来创建一个 IIS 网站,以便我可以将所有必要的信息存储在一个数据库表中,然后编写一个 winforms 程序来检查该表,并为每条记录自动创建一个 IIS 网站?

【问题讨论】:

  • 请编辑您的问题以说明 IIS 的版本。

标签: asp.net iis api web


【解决方案1】:

如果您想在 WinForms/Console 应用程序中执行此操作,那么我强烈建议您查看 System.DirectoryServices 命名空间。

这里有一些很好的文档:

Using System.DirectoryServices to Configure IIS (MSDN)

例如,创建站点和虚拟目录:

Creating Sites and Virtual Directories Using System.DirectoryServices (MSDN)

System.DirectoryServices 命名空间是围绕各种 IIS 管理脚本使用的 ADSI API 的托管包装器。

有关您将遇到的各种元数据库属性的更多信息,我推荐此参考:

IIS Metabase Properties (MSDN)

如果或当您迁移到 IIS7 时,我建议您查看 Microsoft.Web.Administration 命名空间和 APPCMD 工具。

【讨论】:

    【解决方案2】:

    当 IIS 安装到服务器上时,还会安装许多脚本。 要查看的是 IISweb.vbs,因为它使您能够从命令行创建网站。它通常位于您的 %Windows%\System32 目录中,您可以使用 Cscript iisweb.vbs sitename /d hostheader 从命令提示符运行它

    如果您需要在您的网站上设置更多参数,那么有几种方法可以做到这一点,使用 adsutil.vbs 实用程序脚本或创建您的虚拟网站,将设置导出到文件(将配置保存到文件),然后当您需要创建新网站时,让您的程序编辑设置,然后将配置导入为新网站。

    IIS 6.0 Administration guide 是查找其中一些内容的好地方

    显然,要执行此操作,您需要在创建新网站的服务器上拥有适当的权限

    【讨论】:

      【解决方案3】:

      另一个有用的脚本是 C:\Inetpub\AdminScripts 中的 adsutil.vbs

      您使用的是哪个版本的 IIS?对于 IIS 6: http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/d3df4bc9-0954-459a-b5e6-7a8bc462960c.mspx?mfr=true

      【讨论】:

        【解决方案4】:

        您可以为此目的使用SDC Tasks Library。这里有一点manual

        【讨论】:

          【解决方案5】:

          我一直在寻找同样的东西,我找到了使用 C# 和 Microsoft.Web.Administration API 在 iis7 中创建网站的示例代码。在 Visual Studio 项目中添加对 C:\Windows\System32\InetServ\Microsoft.Web.Administration.dll 的引用并运行代码。

          http://bloggingabout.net/blogs/dennis/archive/2008/05/16/programmatically-creating-an-iis7-site.aspx

          【讨论】:

            【解决方案6】:

            您可以为您的网站创建安装程序并手动或批量运行此安装程序。要创建安装程序,您可以使用 WiX link text 或标准 Visual Studio 安装项目。 Wix 更强大,但最简单的方法是创建 Visual Studio 安装项目。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-07-27
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-06-06
              • 1970-01-01
              相关资源
              最近更新 更多