我正在尝试让 msdeploy 从命令行工作,并且可以使用本地管理员帐户和 IIS 管理器用户帐户直接成功测试 WMSVC(使用 HTTPS,端口 8172)。这是命令行:
> msdeploy -verb:dump -source:appHostConfig=MyWebsite,wmsvc=myserver,username=iisuser,password=password -allowuntrusted
因此, wmsvc= 指示 msdeploy 使用https://myserver:8172/msdeploy.axd。但是,由于目标主机防火墙不允许端口 8172,我真的很想通过端口 80 使用 Web 部署代理服务。但是,当我将 wmsvc 更改为 computerName 时,它会响应 401:
> msdeploy -verb:dump -source:appHostConfig=MyWebsite,computername=myserver,username=myserver\localadmin,password=password
其中 computername= 指示 msdeploy 使用http://myserver/MSDEPLOYAGENTSERVICE。在浏览器中,该 URL 提示输入用户名/密码,并返回一个空白页面(如果已通过身份验证),因此它似乎正在正确侦听和验证。此外,我还为 NETWORK SERVICE 添加了站点根目录的完全权限。
在标准 WMSVC 上使用 Web 部署代理服务有什么区别?提前致谢!