3

我正在尝试 msdeploy 从我在源 IIS 7 站点上创建的包恢复目标计算机上的站点。目标服务器 IIS 也是 IIS7。但是,目标服务器没有驱动器 D: 作为物理驱动器。D: 与 CD Row 驱动器相关联。我在使用 msdeploy 时使用了 replace 属性,但该规则不起作用。下面是我的命令 msdeploy -verb:sync -source:package=d:\site.zip -dest:apphostconfig="Default Web Site" -replace:objectName="metaProperty",scopeAttributeName="name",scopeAttributeValue="Path" ,targetAttributeName="value",match="d:",replace="c:" -verbose -whatif > msdeploysync.log

但是,-whatif 没有显示更改为 C: 的路径,而且如果我运行命令,我会收到消息说“设备未准备好”,这意味着 D: 替换不起作用。

我被卡住了..有什么帮助吗?

4

1 回答 1

3

提供的用于更改路径的机制(请注意,以非 IIS 版本特定的方式)是设置 kind 参数DestinationVirtualDirectory

-setParam:kind=DestinationVirtualDirectory,scope="Default Web Site",value="c:\full\path\to\website"

如果您想简单地更换驱动器,请尝试将您的替换指令更改为:

-replace:objectName=virtualDirectory,scopeAttributeName=physicalPath,match=^C:,replace=D:

以下是有关各种参数类型的一些官方文档:使用 declareParam 和 setParam

于 2012-09-23T23:00:45.820 回答