Visual Studio 2012 Web部署到带有IIS 7的Windows Server 2008 R2和/msdeploy.axd 404错误

时间:2012-07-14 00:24:06

标签: iis-7 http-status-code-404 windows-server-2008-r2 visual-studio-2012 webdeploy

在Visual Studio 2012中,当我尝试验证Web Deploy连接时,出现此错误消息:

ERROR_DESTINATION_NOT_REACHABLE

enter image description here

在服务器上启动了所需的Web管理服务,并安装了Web Deploy 3.0 RC。

然后使用远程桌面连接我登录服务器并检查位于IIS的{​​{1}}日志。在那里,我可以看到我尝试验证连接,因为它们包含我的IP地址:

C:\inetpub\logs\LogFiles\W3SVC1

它给了我一个404.

尝试将此工作工作了近6个小时后(阅读了很多材料,包括IIS团队标题为Troubleshooting Web Deploy problems with Visual Studio的这篇精彩的故障排除指南以及此相关问题Visual Studio 2010 Web deployment task failed)我决定寻求帮助在这里,看看是否有人知道可能是什么问题......你知道是什么导致了这个404错误吗?

如果您需要更多信息,请问我,我会提供......:)

修改1

昨天我还在本地计算机上尝试了以下2012-07-13 20:58:49 185.201.117.17 HEAD /msdeploy.axd site=Default%20Web%20Site 8172 - 189.10.32.194 - 404 0 2 78 命令,列出服务器上名为msdeploy的文件夹的内容[并且按预期工作]:

test

修改2

经过大量的安装/重新安装操作后,当我尝试在命令行中使用VS 2012 RC甚至msdeploy发布网站时,我终于遇到了Windows Server 2008返回503 HTTP错误的问题。

现在最好的办法就是彻底安装Windows Server 2008,因为我有一个混乱的虚拟机服务器映像可供使用。希望它能做到这一点。

仅为记录,这是VS 2012尝试执行的msdeploy命令。我做了一个复制/粘贴,并在命令行中使用msdeploy进行了尝试:

C:\Program Files\IIS\Microsoft Web Deploy V3>msdeploy -verb:dump -source:content
path=c:\test,computerName=xxxxxxxxxx.publiccloud.com.br,username=User,password=Password
Info: Using ID 'a246a13c-7777-4226-964c-fe9934c60b77' for connections to the rem
ote server.
MSDeploy.contentPath
c:\test
c:\test
c:\test\test.txt

只是为了得到相同的503 Server Unavailable消息。

编辑3

此问题已在IIS Web部署工具(MS Deploy)论坛here上交叉发布。

9 个答案:

答案 0 :(得分:26)

Fyi - 我也得到了404错误。事实证明,我必须下载完整的软件包并安装所有内容。

http://www.iis.net/downloads/microsoft/web-deploy#additionalDownloads

答案 1 :(得分:3)

我遇到了同样的错误(ERROR_DESTINATION_NOT_REACHABLE)。我能够通过打开端口8172解决问题。

然后我遇到了错误:ERR_COULD_NOT_CONNECT_TO_REMOVESVC,我可以通过安装 Web Deploy 3.0的每个组件来解决这个错误。它试图点击/ MSDEPLOYAGENTSERVICE,默认情况下,它不是由Web Deploy 3.0安装程序安装的。

答案 2 :(得分:3)

我不得不手动添加部署处理程序。在IIS管理器中,选择服务器,选择“IIS |处理程序映射|添加托管处理程序...”。

Request path: msdeploy.axd
Type: Microsoft.Web.Deployment.DeploymentAgentHandler,..., Version=9...
Name: Web Deploy Whatever

答案 3 :(得分:2)

在我的情况下,没有为机器名发出为WMSVC颁发的默认证书。我的解决方案是:

  1. 从我的域CA颁发机器名称证书。如果您愿意信任该证书,则可以自签名。
  2. 在个人证书存储区
  3. 下安装该证书
  4. 停止网络管理服务
  5. 将证书更改为我正确颁发的证书
  6. 重启服务。

答案 4 :(得分:1)

你检查过你的处理程序了吗?您可以通过在同一文件夹上创建HTML页面并尝试访问该HTML来对此进行测试。如果可以,请检查您的网站是否有必要的处理程序。另外,请确保您的DNS记录指向正确的IP地址。

答案 5 :(得分:1)

就我而言,我在服务器机器上同时拥有Web Deploy 2.0和3.0。 同时删除和安装3.0解决了我的问题。

答案 6 :(得分:1)

首先,我尝试了修复Web Deploy 3.0的安装,但没有用。删除和安装解决了我的问题。

答案 7 :(得分:0)

确保启动Web管理服务。

我删除了SSL证书,服务停止了工作。

答案 8 :(得分:0)

如果所有先前的指示都失败,并且您正在使用Azure虚拟机,其中8172的端点已打开,我已解决该问题,删除端点并再次打开它。我相信我第一次选择使用浮动IP启用,但这不起作用。只需再次创建端点,选择disable floating ip并完成!