通过MSDeploy.exe访问WMSvc时出现404错误

135

从Windows 8升级到安装了Web管理服务的Windows Server 2012(IIS 8),我可以在W8设备上使用IIS Manager来管理远程服务器,但是当我执行以下命令时,我会从WMSvc收到404.7错误:

msdeploy.exe" -verb:dump -source:contentPath=c:\InetPub\wwwroot,computerName=https://uktnws01:8172/MsDeploy.axd,userName=corp\administrator,password=WMSvcIsCrap,authType=Basic -allowUntrusted

我已经尝试了各种组合和参数。我可以使用telnet连接到该端口,我知道它是开放的。

我只是从Windows中删除了管理服务功能并重新启动。我会倒一杯威士忌,准备一些小吃。同时,如果您有任何想法,请分享。

在下面加入我的实时博客并关注最新情况。

更新1

删除管理服务后,我现在获得以下错误:

错误:无法连接到远程服务器 错误:由于目标计算机积极拒绝,因此无法建立连接 192.168.2.22:8172 错误计数:1.

第二行是一个新消息!太棒了。

更新2

好吧,情况正在变得越来越糟糕。重新安装后,远程IIS控制台将提醒证书,然后说:

服务器不接受远程连接。

但我想这可能是因为我可能没有重新启用远程管理,而只是安装了该东西。

更新3

启用远程管理后,远程IIS再次正常工作,但是404错误又返回了。出于SEO的目的,这里是完整的错误:

Error Code: ERROR_DESTINATION_NOT_REACHABLE More Information: Could not connect to the remote computer ("uktnws01"). On the remote computer, make sure that Web Deploy is installed and that the required process ("Web Management Service") is started.  Learn more at http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_DESTINATION_NOT_REACHABLE.
Error: The remote server returned an error: (404) Not Found.
Error count: 1.

更新4

通过VPN连接到客户端的另一个Web服务器尝试使用相同的命令,结果非常顺利!看来我的全新2012版本构建的IIS出了问题。

更新5

我为WMSvc启用了失败请求跟踪,并发现404.7来自RequestFilteringModule模块。 根据文档,404.7表示“拒绝文件扩展名”。

http://www.iis.net/configreference/system.webserver/security/requestfiltering

添加.axd文件的显式服务器规则并没有帮助。看到这个模块很有趣,因为它对URL长度和内容大小施加限制。你能想象在IIS托管的WCF应用程序中进行故障排除吗?哈哈,我真的要哭了。

更新6

我正在删除请求筛选,这意味着还需要删除ASP.NET和其他各种东西。他们需要一个“一次性重新安装Windows功能和依赖项,因为我们编写的软件不可靠”的选项。

更新7

我重新安装了所有内容,突然一个名叫Richard的澳大利亚人出现了,他完全解释了Web Deploy实际上并不是WMSvc的标准部分,即使在IIS 8上也是如此,并且我需要安装Web Deploy。

于是我这样做了。然后我禁用了MsDepSvc,它是Web Deploy安装的另一部分(我认为它是Web Deploy的全部),因为它占用了80端口并阻止负载均衡器看到IIS服务停机。

现在它可以工作了。我可以去睡觉了。


26
+1 对于那个滑稽的密码 - Michael12345
5
这场混乱让我们失去了多少生产力?我遇到了类似的问题,但发现在查找用户名时IIS崩溃了。 - ATL_DEV
6
在Windows 2012上,对我来说安装顺序是先安装Web管理服务功能,然后再安装Web Deploy 3.5。 - JustEngland
1
仅仅安装Web Deploy是不够的!我已经安装了Web Deploy,这是我做的第一件事情。但我还需要前往添加/删除程序,并更改安装设置以包括处理程序。我希望那位认为默认情况下不包括处理程序的MS开发者能得到爱、幸福和繁荣。毕竟它让服务无法正常工作。 - nurettin
我在尝试使用Web Deploy 3.6时遇到了各种问题,所以按照Sinned Lolwut的评论卸载了3.6,并安装了3.5 - 第一次就成功了。我使用Web平台安装程序(https://www.microsoft.com/web/downloads/platform.aspx)安装了Web Deploy 3.5。之后重新启动了Web管理服务,并能够在Visual Studio Web Deploy配置文件中验证连接。(我本来想在上面的评论中回复,但是还没有足够的声望)。 - bob number 2
我可以确认对我有效的方法: -在安装Web Deploy之前,必须安装和设置Web管理服务 -确保Web管理服务允许远程连接并绑定有效证书 -然后安装/重新安装Web Deploy。我使用了最新的Web Deploy 3.6(x64)版本。 - timk
13个回答

0

这个问题在Server 2019中仍然存在。

需要按照正确的顺序安装Web Deploy。

  • 首先,启动服务 - Web管理服务
  • 然后安装Web Deploy(从Microsoft网站下载)

0
在我的情况下,在发布设置对话框中的服务器字段(第一个项目)中使用http://<server_address>而不是https://<server_address>有效。

-1

仅使用Windows身份验证。Web Deploy 3.5。并且只使用设置在顶级服务器图标的管理服务图标中的WMSVC证书。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接