【问题标题】:appcmd add vdir /IN < fileWithVdirConfig.xml ERRORappcmd 添加 vdir /IN < fileWithVdirConfig.xml 错误
【发布时间】:2012-03-25 20:00:27
【问题描述】:

我正在尝试使用 appcmd 自动部署站点。

我的网站和应用程序池工作正常。我在 xml 配置文件中获取设置:

appcmd list site "bleh" /config /xml

我将这些保存到 xml 文件中,并将进入源代码管理。我使用以下命令创建站点和应用程序池:

appcmd add site /IN < fileWithSiteSettings.xml

在我尝试使用虚拟目录执行此操作之前,这非常有效。我收到以下错误:

ERROR ( message:Must use exact identifer for VDIR object with verb ADD. )

我试过用谷歌搜索,但找不到太多。我的目标是能够通过 CI 服务器构建过程将站点或服务或它们的集合自动部署到 N 台机器上。不知道为什么 vdir 的行为与其他的不同。

这里是 vdir 的 xml 文件中的设置:

<appcmd>
    <VDIR physicalPath="C:\site\WebSite" path="/" APP.NAME="Default Web Site/myvdir" VDIR.NAME="Default Web Site/myvdir/">
        <virtualDirectory path="/" physicalPath="C:\site\WebSite" />
    </VDIR>
</appcmd>

谢谢

【问题讨论】:

    标签: appcmd iisvdir


    【解决方案1】:

    我今天得到了ERROR ( message:Must use exact identifer for VDIR object with verb ADD. ),并通过在站点名称后面添加/ 来解决它。

    【讨论】:

      【解决方案2】:

      出现您的问题是因为您尝试添加一个包含仅包含虚拟目录信息的文件的站点。试试命令

      appcmd add vdir /IN < fileWithSiteSettings.xml
      

      而且我认为你的运气会更好。

      可能您正尝试将虚拟目录添加到现有站点,因此仅导出 VDIR。否则,您应该导出整个站点,然后使用原始命令加载它。

      【讨论】:

      • 哦,有道理。因此,要在配置文件中包含虚拟 driectories 设置,我需要导出整个站点并删除不需要的设置,或者导出 vdir 并添加站点设置....如果站点已经存在,(相同至少名称),我认为它只会愉快地将 vdir 添加到该站点?
      • 绝对,我只是在本地导出了一个虚拟目录,更改了配置文件以便将其加载到另一个,然后运行查询。效果很好。
      • 嗨,pms,我刚刚回到这个项目。我对你到底是怎么做到的感到很困惑。 IE。您如何在一个网站中备份一个 VDIR 的设置,然后将其恢复到另一个网站(或更改其名称并恢复到同一个网站)。我试图将 VDIR xml 元素包装在站点 xml 中,但无济于事。你说的听起来合乎逻辑,但似乎无法理解。
      • 想我是借助forums.iis.net/t/1176391.aspx 回答了我自己的问题,基本上vdir 只指向文件,我想要的是一个能够将其添加到网站的应用程序。
      猜你喜欢
      • 2012-03-25
      • 1970-01-01
      • 1970-01-01
      • 2013-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-17
      • 1970-01-01
      相关资源
      最近更新 更多