131

从 Windows 8 到安装并运行 Web 管理服务的 Windows Server 2012 (IIS 8),我可以使用 W8 框上的 IIS 管理器来管理远程服务器,但是当我执行以下命令时,我会从 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

我尝试了各种组合和参数。我可以远程登录到那个端口,我知道它是开放的。

我只是从 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

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

所以我愿意。然后我禁用了它安装的另一部分 MsDepSvc(我认为它是整个 Web 部署),因为它占用了端口 80 并阻止负载平衡器看到已关闭的 IIS 服务。

它有效。我可以去睡觉了。

4

12 回答 12

191

如果其他人遇到与我相同的问题,我也会遇到相同的 404 错误。我发现检查的最快方法是打开服务器本身,然后打开“https://<servername>:8172/MsDeploy.axd”。Chrome 和 Firefox 只是显示了一个空白页面,所以我不得不使用开发人员工具 (F12) 的网络选项卡来查看实际的 404 错误消息。

不知何故,在从 Web 平台安装程序安装 Web Deploy 3.0 时,没有安装 IIS 7 部署处理程序,即使 IIS 管理器 UI 模块安装了。就我而言,我从以下链接下载了 Web 部署工具安装 .msi:Web 部署工具安装。然后我不得不返回 IIS 管理工具(开始 -> 运行 -> inetmgr.exe)> {服务器名称} > 单击管理服务图标,然后在 MsDeploy.axd 处理程序开始工作之前重新启动管理服务。

启用 IIS 部署处理程序 + 远程代理服务

在此处输入图像描述

于 2013-02-22T14:21:27.463 回答
92

您是否在服务器上安装了 Web Deploy?Web 部署向 WMSVC 注册了一个处理程序 (/msdeploy.axd),因此如果未安装 404 将是预期的状态代码。

于 2012-12-14T00:41:34.347 回答
69

在 Windows 2012 R2 服务器上,我遵循了 mga911 的建议。

我被困在部署工作中。已安装 Web Deploy 3.5 -> 启用管理服务委派 -> 已启动确保服务。问题是没有安装 IIS 部署处理程序。通过 Web PI 4.6,我没有机会安装 IIS 部署处理程序。您需要进入控制面板 -> 程序和功能更改 Web Deploy 3.5 的安装。请注意我的指示。在更改过程中,它表示将安装所有子包,但文本消息显示将安装 3 个子组件中的 0 个。这些组件之一是 IIS 处理程序。仔细阅读,因为我没有并且很沮丧:)

  • 控制面板 > 程序和功能
  • 右键单击 Microsoft Web Deploy 3.5
    • 选择更改>单击下一步>单击更改
    • 您会注意到选择Web部署框架时,您将在消息中看到“它有0个选定的3子处理”
    • 单击下拉菜单选择“整个功能将安装在本地硬盘上”
    • 下一步 > 更改 > 完成
于 2013-11-24T00:04:47.300 回答
19

我认为重要的一点是您必须先打开管理服务,然后再安装 Web Deploy。

我反其道而行之,但没有奏效。

只有重新安装 Web deploy 才开始工作。

于 2013-06-21T14:53:41.987 回答
13

当我通过 Web 平台安装程序安装 Web Deploy 时,未选择 Handler。我不得不手动安装Web Deploy 3.0,点击“更改”,然后选择要安装的Handler。

于 2013-06-05T19:41:46.010 回答
13

经过数小时的搜索,在下面执行您的解决方案对我有用!

Control Panel> 程序和功能

右键单击 Microsoft Web Deploy 3.5

选择更改>单击下一步>单击更改

您会注意到选择Web部署框架时,您将在消息中看到

 "It has 0 of 3 subfeatures selected"

点击下拉选择"Entire feature will be installed on local hard drive"

下一步 > 更改 > 完成

于 2014-07-18T08:51:37.610 回答
8

就我而言,当通过 web pi 安装 web deploy 3.0 包时,我从未在 IIS /home 中获得管理服务委派选项。但是,重新安装它解决了问题,从而解决了我的 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,但这可以避免很多人像我一样头疼,因为这在我想让人们知道的旧开发机器上运行良好。)

于 2013-08-27T12:50:35.197 回答
4

而不是使用 Web 平台安装程序。从网站下载 WebDeploy.exe 并使用完整包选项将其安装在服务器上。

它将解决问题。

于 2016-06-30T11:53:00.660 回答
1

此外,您可能需要授予 Web 管理服务的访问权限

我还遇到了 Visual Studio (2013) 无法更新我的服务器上的应用程序 (Windows 2012 R2 IIS 8.5) 的问题。我如上所述手动添加了组件,但这并没有解决问题。然后我找到了这篇文章

它基本上说 Web 管理服务作为本地服务登录,它没有访问 Inetpub 目录的权限。授予本地服务权限为我解决了这个问题。

于 2016-05-27T05:40:42.723 回答
1

我有同样的问题。我通过“重启服务 wmsvc”解决了这个问题。

于 2020-03-11T10:53:26.870 回答
0

这个问题在服务器 2019 中仍然存在。需要按正确的顺序安装web部署

  • 一、启动服务——web管理服务
  • 然后安装 web deploy(从 Microsoft 网站下载)
于 2021-02-24T16:58:39.570 回答
-1

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

于 2015-10-06T05:03:09.753 回答