66

我正在尝试使用 VS2010 的一键发布功能将测试站点从我的笔记本电脑部署到我的服务器。我在两台机器上都关闭了防火墙,并且 MS 部署服务已启动并在我的笔记本电脑和服务器上运行。

但是,当我尝试在笔记本电脑上从 VS2010 发布时,出现以下错误:

错误 1 ​​Web 部署任务失败。(无法联系远程代理(URL https://192.168.1.181/:8172/msdeploy.axd?site=LocationsTest)。请确保在目标计算机上安装并启动了远程代理服务.)
请求的资源不存在,或者请求的 URL 不正确。
错误详细信息:无法联系
远程代理(URL https://192.168.1.181/:8172/msdeploy.axd?site=LocationsTest )。确保在目标计算机上安装并启动了远程代理服务。
收到了不受支持的响应。响应标头“MSDeploy.Response”为“”,但应为“v1”。
远程服务器返回错误:(404) Not Found。0 0 测试网

知道我在这里做错了什么吗?

4

15 回答 15

75

重新启动视觉工作室

在运行 IIS 7.5 的服务器上成功部署了 WebApp 后,我曾多次遇到过这个问题。显然,由于在出现此错误之前在服务器上成功完成了部署/发布,因此服务器设置/配置几乎没有出错(除非先前成功的部署做了一些可怕的错误并删除了一些配置参数)服务器)。

重新启动服务器后,检查 Web 管理服务和 Web 部署服务是否正常运行,并通过 cUrl 工具验证 MsDeploy.axd 的 GET 成功,只剩下一件事要做。重新启动 Visual Studio。神奇地重新启动 VS 发布后重新开始工作。一切靠自己。神奇的东西,这个 Web 部署 :)

于 2011-08-01T06:29:13.547 回答
40

确保您将 WMSvc 服务(Web 管理服务)设置为“自动”(并已启动),以便在您重新启动时打开并查看此链接

于 2010-06-01T17:18:10.297 回答
18

确保您在发布配置文件中正确设置了站点/应用程序: 在 Visual Studio 2010 中发布配置文件对话框

如果您拼写错误的站点或应用程序名称,您会收到相同的错误消息。

于 2011-03-29T19:07:22.360 回答
13

尽管许多不同的不相关的事情可以促成获得 404,但我为自己解决了这个问题。

  1. 安装/重新安装 WebDeploy 安装程序时,选择自定义/更改,然后确保“管理服务委派 UI”是已安装选项之一,默认情况下未安装,但 WebDeploy 工作需要它(安装程序错误)。
  2. 使用 IIS 管理器的服务器节点中的新管理服务委派图标添加“使用内容部署应用程序”角色,接受它的默认设置。但您可能还想为有权修改 IIS 设置的用户指定“运行方式”设置。
  3. 重新启动 Web 管理服务。

在此之后,一切正常。假设 Web 管理服务设置正确(我的配置为接受远程连接,防火墙端口已打开,并且我正在上传的用户已添加到我要部署到的每个站点(使用 IIS 管理器权限图标在 IIS 管理器的每个站点节点中))。

于 2011-10-06T12:10:39.573 回答
11

我们发现问题是因为在 Windows 2008 服务器上启用 Web 管理服务功能之前安装了 WebDeploy 。安装 Web Management Service 后,完全卸载 Web Deploy。然后重新安装并确保选择了包的所有组件。

重新安装后,我们立即能够从我的本地计算机以及我们的 CI 发布到服务器。

阅读其他答案后需要注意的几点:

  • 如果您收到 404 错误,则问题不是安全问题之一。
  • 我们不必重新启动 Visual Studio 即可使此更改生效。
  • 重新安装将以自动模式启动服务,请勿调整此设置。
于 2012-03-31T14:59:18.883 回答
4

当我从以下位置更改使用“Windows 管理服务”的“服务 URL”时,我能够解决同样的问题:

https://ExampleURL:8172/msdeploy.axd?site=SiteName

对此使用“远程代理服务”:

http://ExampleURL

在那之后它工作得很好。

于 2012-07-20T19:55:14.380 回答
2

我收到此错误是因为我更改了密码。部署向导仍然保存了我的旧密码,重新输入我的密码后,现在一切正常。

于 2012-02-08T03:03:14.393 回答
2

我已经安装了几个网络服务器,但我一直遇到这个问题,所以我在这里发布我的答案,以便我在谷歌问题时找到它。

基本上我总是从 Web Platform Installer 安装 Web Deploy 3。这是第一个错误。由于某种原因,这只安装了您需要的一半。如果您已安装它,请将其卸载并下载 Web Deploy 安装程序。然后选择“完成”安装。

如果您遵循本指南

然后忽略选项1。 这是一个陷阱

从“ 2. 下载 Web Deploy 安装程序... ”重新开始阅读

于 2013-05-27T14:28:31.477 回答
1

我从 IE 浏览器从 https://servername:8172/MsDeploy.axd 得到 404

但 Chrome 并没有制造麻烦。

这可以是第一个测试,看看您是否可以访问服务器上的 Web 管理服务。换句话说:当 chome 工作时(它以空白页面响应),那么您就可以访问服务器上的服务。

您仍然需要拥有部署到特定站点的权限。在 IIS 中找到该站点并在“管理”下的“IIS 管理器权限”中执行此操作。

于 2012-10-10T09:20:03.533 回答
1

愚蠢的我,我没有在服务器上安装 .NET 4

于 2012-08-14T20:27:29.933 回答
0

如果您使用的是 SSL 证书,您应该进入服务器管理器的 IIS 管理器部分下的管理服务并停止服务,选择正确的证书,然后再次启动服务。这对我有用(我收到了禁止消息)。

于 2011-10-18T13:17:14.190 回答
0

即使安装了所有必需的软件,我也遇到了类似的错误。我注意到服务 URL 没有以 http:// 为前缀。一旦加上前缀,它就可以很好地工作。

于 2014-04-28T04:32:39.130 回答
0

就像一个假人一样,这个错误是为我抛出的,因为我没有将远程 Web 代理安装为 此处提供的 Web 部署工具的一部分。

于 2012-08-18T22:03:57.120 回答
0

从 Visual Studio 2010 发布项目时,几乎会随机出现同样的消息。

修复方法是删除$projectname.Publish.xml文件(在项目的根目录中)并重新创建它。

于 2011-05-17T09:55:47.520 回答
0

我从 VS 2013 收到了类似的错误,并找到了一个我没有看到提到任何其他答案的修复程序。

错误:

  • 底层连接已关闭
  • 无法从传输连接读取数据:远程主机从构建服务器 (TFS 2010) 强行关闭了现有连接

使固定:

我的解决方法是在目标上重新启用 TLS 1.0。这是一个注册表项,但我为此使用免费的 IISCrypto 小程序。

于 2015-07-05T21:31:57.160 回答