我正在使用 msdeploy.exe 将我们的实时 Web 环境复制到异地灾难恢复服务器。此异地服务器还托管一个 FTP 站点,我们用它来传输数据库备份和日志。
默认情况下,使用 MSDEPLOY 进行完整的 Web 服务器同步将删除目标服务器上不在源服务器上的任何站点,因此为了避免每晚都摧毁我们的 FTP 服务器,我在 msdeploy 命令行中明确忽略了它。
命令行如下(格式化以便于阅读)
msdeploy.exe -verb:sync
-source:webserver,computername=HAPPYWEB
-dest:webserver
-enableRule:DoNotDeleteRule
-disableRule:SkipInvalidSource
-skip:WebSite="FTP Backups"
在 IIS7 中,在“FTP 备份”站点下,有一个名为“FTP 授权规则”的节点。为了使 FTP 站点正常工作,我必须在此部分添加一个允许条目,向相应用户授予读/写权限。
msdeploy 命令行正在完全删除此设置 - 尽管 FTP 站点保持在线且完整,但 FTP 授权规则部分正在被清除,这意味着我们计划的传输将失败,直到有人登录并重新创建适当的规则。
这是一个已知问题吗?我可以使用 msdeploy 中的某些设置来解决它吗?如果不行,有人知道我在哪里提交针对 Web 部署工具的错误报告吗?
答案1
您的命令似乎格式正确,并且应该跳过同步网站“FTP 备份”。当您使用 -verbose 和 -debug 开关运行命令时输出是什么?
附言:如果这对您或其他任何人有帮助,请直接给我发电子邮件,地址是 baslam at microsoft dot com。我是微软的 Web Deploy 工具的所有者,我很乐意为您提供帮助!