VS 2010使用Web Deploy发布

时间:2011-03-30 18:22:28

标签: visual-studio-2010 iis-7 web-deployment-project windows-server-2008-r2 webdeploy

我正在尝试使用VS2010发布功能部署我的ASP.NET MVC 3 Web应用程序。 我正在使用Web Deploy作为Publish方法,但是我收到了这个错误:

  

错误1 Web部署任务   失败。(远程代理(URL   http://192.168.1.11/MSDEPLOYAGENTSERVICE)   无法联系。确保   已安装远程代理服务   在目标计算机上启动。)制作   确保网站名称,用户名和   密码是正确的。如果问题是   没有解决,请联系您   本地或服务器管理员。错误   详细信息:远程代理(URL   http://192.168.1.11/MSDEPLOYAGENTSERVICE)   无法联系。确保   已安装远程代理服务   在目标计算机上启动。一个   收到了不支持的回复。该   响应头'MSDeploy.Response'   是'V1'但预计'v1'。该   远程服务器返回错误:(401)   未经授权的

如何绕过这个并使其发挥作用?我的服务器是Windows 2008 R2。

3 个答案:

答案 0 :(得分:5)

看看我为遇到不同问题的人提供的这个答案,WebDeploy有一些问题:

  

msdeploy (Web Deploy) failing with 401 auth issues

如果您可以控制开发计算机和服务器,还要确保升级到WebDeploy 2.0。

最后确保你正确配置服务器,相信我花时间在这一步可以节省头发:

  

Configure Web Deploy

答案 1 :(得分:1)

对于那些仍在寻找的人,我必须确保:

  • 指定端口8172,使用默认服务名称(msdeploy.axd),使用https并选中此框以允许来自Visual Studio的发布服务URL中的不受信任证书:https://serveraddress:8172/msdeploy.axd

此外,我发现此IIS article对于设置服务非常有帮助。

答案 2 :(得分:1)

我把头发拉了4个小时。这是我用于配置设置的内容。在IIS(服务器2008 R2上的7.5)

我为我设置的IIS帐户授予了发布权限(虽然我也使用了Server Admin帐户,排除了权限问题,但最终都有效。)

我把其他一切都保留了下来。我部署的服务器是VPS,因此计算机名称与我的应用程序或域无关,因此我保留了为发布连接指定URL的原样。我离开了该位置以保存发布设置文件。

在Visual Studio中:

  • 发布方法:Web部署
  • 服务网址:https://myservice.com(此处没有端口或msdeploy, 只是网页上的https)
  • 网站申请:mysitename / myapplicationname(对我而言,他们都是 同名)
  • 标记为IIS应用程序:已选中
  • 保留额外文件:已选中
  • 允许不受信任的证书:已选中

对于用户名 - 我不需要使用完全解析的名称,因此 user ,而不是 servername \ user - 工作正常。

这失败了404错误 - 如果我尝试通过http而不是https(服务URL)发送它,则失败并出现套接字错误(10054)。

我验证了所有必需的服务都在运行,我重启了所有服务。我也重新启动了IIS(这对我的情况很痛苦)。还是nada。

然后我决定在服务器上重新安装web部署(3.0 RC)。我确保使用自定义安装选项,当我这样做时,我确保安装了所有组件和处理程序(默认情况下不是这样)。一旦我这样做,一切都开始正常。

我不确定我是否第一次安装不好,但它现在工作得很好。