从安装了Web管理服务的Windows 8到Windows Server 2012(IIS 8),我可以使用W8上的IIS管理器来管理远程服务器,但是当我执行以下命令时,我从WMSvc获得了404.7: / p>
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服务器执行相同的命令到客户端,这是一个魅力!看起来IIS在我绝对打屁股的新2012版本上是不感兴趣的。
更新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
我重新安装了一切,然后一些名叫理查德的澳大利亚人突然出现并完全解释说Web Deploy实际上并不是WMSvc的一部分,即使在IIS 8上也是如此,我需要安装Web Deploy。
所以我这样做。然后我禁用MsDepSvc,这是它安装的另一部分(我认为是整个Web部署),因为它在端口80上很糟糕,并阻止负载均衡器看到已关闭的IIS服务。
它有效。我可以去睡觉了。
答案 0 :(得分:168)
如果其他人遇到与我相同的问题,我也会遇到相同的404错误。我发现检查的最快方式是在服务器上运行,然后打开“https://< servername>:8172 / MsDeploy.axd”。 Chrome& Firefox只显示了一个空白页面,因此我不得不使用开发人员工具的网络选项卡(F12)来查看实际的404错误消息。
不知何故,从Web平台安装程序安装Web Deploy 3.0时,即使IIS管理器UI模块执行了IIS 7部署处理程序,也未安装。就我而言,我从以下链接下载了Web部署工具安装.msi:Web Deployment Tool Installation。然后我不得不回到IIS管理工具(开始 - >运行 - > inetmgr.exe)> {服务器名称}>单击Management Service图标,然后在MsDeploy.axd处理程序开始工作之前重新启动管理服务。
答案 1 :(得分:82)
您是否在服务器上安装了Web Deploy? Web Deploy使用WMSVC注册处理程序(/msdeploy.axd),因此如果未安装404,则404将是预期的状态代码。
答案 2 :(得分:68)
在Windows 2012 R2 Server上,我遵循了mga911的建议。
我被迫部署工作。已安装Web Deploy 3.5 - >启用管理服务委派 - >确保服务已经启动。问题是尚未安装IIS部署处理程序。通过Web PI 4.6我没有机会安装IIS部署处理程序。你需要进入控制面板 - >程序和功能更改Web Deploy 3.5的安装。请注意我的指示。在更改过程中,它指示将安装所有子包,但文本消息表示将安装3个子组件中的0个。其中一个组件是IIS处理程序。请仔细阅读,因为我没有并且感到沮丧:)
答案 3 :(得分:17)
我认为一个重点是您必须首先打开Management服务然后再安装Web Deploy。
我反过来做了它并没有用。
只有重新安装Web部署才能开始工作。
答案 4 :(得分:12)
当我通过Web平台安装程序安装Web Deploy时,未选择Handler。我不得不手动安装Web Deploy 3.0,单击“更改”,然后选择要安装的处理程序。
答案 5 :(得分:11)
经过几个小时的搜索,下面的解决方案为我工作!!
Control Panel
>程序和功能
右键单击Microsoft Web Deploy 3.5
选择更改>点击下一步>点击更改
您会注意到,当您选择Web部署框架时,您会在消息中看到
"It has 0 of 3 subfeatures selected"
点击下拉菜单选择"Entire feature will be installed on local hard drive"
下一个>更改>完成
答案 6 :(得分:8)
在我的情况下,当通过web pi安装web deploy 3.0软件包时,我从来没有在IIS / home中获得管理服务委派选项。重新安装它解决了问题,从而解决了Resolved我的404.7错误。
这是在Microsoft Server 2012和IIS8下
编辑:我刚刚在Windows 8上尝试了同样的事情,并想指出微软网站指出:
您无法使用Web Deploy为在Windows 8.0或8.1上的IIS中托管的站点设置远程发布。原因是Windows的客户端SKU没有附带远程连接所需的Web管理服务。因此,在Windows 8.0或8.1上,IIS管理器中不提供配置远程发布所需的IIS管理器权限图标和配置Web部署发布部署选项。 http://www.iis.net/learn/install/installing-publishing-technologies/installing-and-configuring-web-deploy-on-iis-80-or-later#00
(是的,我知道目标是问题中的Server 2012,但是这可以让很多人不像我一样头痛,因为这在我的旧开发机器上运行得很好,我想让人们知道。)< / p>
答案 7 :(得分:3)
而不是使用Web平台安装程序。 从网站下载WebDeploy.exe并将其安装在具有完整包选项的服务器上。
它将解决问题。
答案 8 :(得分:1)
此外,您可能需要为Web管理服务授予访问权限
我还遇到了Visual Studio(2013)无法更新服务器上的应用程序(Windows 2012 R2 IIS 8.5)的问题。我如上所述手动添加了组件,但这并没有解决问题。然后我找到了this article。
它基本上表示Web管理服务以本地服务身份登录,该服务对Inetpub目录没有访问权限。 授予本地服务权限为我解决了这个问题。
答案 9 :(得分:1)
我有同样的问题。我通过“ Restart-Service wmsvc”解决了这个问题。
答案 10 :(得分:0)
这个问题在 server 2019 中仍然存在。 需要按照正确的顺序安装web部署
答案 11 :(得分:-1)
仅使用Windows身份验证。 Web部署3.5。并且只有在顶级服务器图标的管理服务图标中设置的WMSVC证书。