我正在尝试使用appcmd自动部署网站。
我的网站和应用程序池工作正常。我在xml配置文件中获取设置:
appcmd list site "bleh" /config /xml
我将这些文件保存到xml文件中,然后进入Source控件。我使用如下命令创建站点和应用程序池:
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>
由于
答案 0 :(得分:1)
您的问题正在发生,因为您尝试使用仅包含虚拟目录信息的文件添加网站。尝试命令
appcmd add vdir /IN < fileWithSiteSettings.xml
我认为你会有更好的运气。
据推测,您正在尝试将虚拟目录添加到现有站点,从而仅导出VDIR。否则,您应该导出整个站点,然后使用原始命令加载它。
答案 1 :(得分:1)
我今天获得ERROR ( message:Must use exact identifer for VDIR object with verb ADD. )
,并通过在网站名称中添加尾随/
来解决此问题。