【问题标题】:An error occurred while sending the request in TFS2015 update2 vNext build configuration在 TFS2015 update2 vNext 构建配置中发送请求时出错
【发布时间】:2017-06-24 11:44:05
【问题描述】:

在配置 TFS vNext 构建代理时出现错误:

错误连接到服务器 发送请求时出错。请求。

我在事件日志或其他任何地方都找不到任何其他错误消息。

请帮忙。

更新 1:SSL (https///tfs) 无效。但普通的 http:// 有效。

更新 2:我已删除旧代理并尝试配置新代理。在执行此操作时,我在 _diag 文件夹中收到以下错误:

System.Net.WebException:底层连接已关闭:发送时发生意外错误。 ---> System.IO.IOException: Unable to read data from the transport connection: 一个现有的连接被远程主机强行关闭。 ---> System.Net.Sockets.SocketException: 现有连接被远程主机强行关闭 …… System.Net.WebException:基础连接已关闭:发送时发生意外错误。 ---> System.IO.IOException: Unable to read data from the transport connection: 一个现有的连接被远程主机强行关闭。 ---> System.Net.Sockets.SocketException: 现有连接被远程主机强行关闭 …… System.IO.IOException:无法从传输连接读取数据:现有连接被远程主机强行关闭。 ---> System.Net.Sockets.SocketException: 现有连接被远程主机强行关闭 …… System.Net.Sockets.SocketException (0x80004005):现有连接被远程主机强行关闭

更新 3: 我有两个服务器如下: 1 是应用程序服务器,其他是 SharePoint 和报告服务器,试图在第三台服务器中配置构建。 TFS URL 配置了 SSL 443。

如果我尝试使用http://tfs server/tfs 配置代理,它会成功,但在构建时收到错误。 当我尝试使用 https 进行配置时,出现上述错误。有趣的是,我曾将这台服务器用于两个代理,在这种情况下,我又多了一台服务器,我得到错误的地方工作正常。

【问题讨论】:

  • 不,这个错误不一样,因为我没有任何错误号。
  • 请注意can't find a usable TLS version 的错误真的是这个没有意义。

标签: tfs fiddler tfs-2015


【解决方案1】:

我终于找到了问题的解决方案:

根本原因: TFS vNext 代理使用 .Net 框架 4.5...,默认情况下不支持 TLS 1.1/TLS 1.2。

解决方案: 我们需要修改 .Net 框架注册表项以指示 .Net 框架使用 TLS 1.2。 使用命令更新注册表:

reg add HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 /v SchUseStrongCrypto /t REG_DWORD /d 1 /reg:64 (and/or /reg:32)

此处引用:

https://stackoverflow.com/a/28502562/2939996

【讨论】:

  • 我在将 tfs-Server 升级到更新的 tls 版本后遇到了这个问题。更新注册表使我的机器文件复制任务再次工作。非常感谢!
【解决方案2】:

如果您下次在构建代理配置过程中遇到一些问题。对于故障排除,您可以检查相关的配置日志。要查看发生了什么,您只需转到安装代理的文件夹即可。在该文件夹中,_diag 文件夹存在日志记录

代理的“ServerUrl”设置列出了 TFS 的默认 URL。默认值是端口 8080 上的 HTTP。根据您的更新,如果您已将配置更改为在 HTTPS 上运行。因此,您的 TFS 不是 8080,而是其他一些,例如 443。并且您或其他同事在更改为 HTTPS 之前配置了构建代理。

如果是这样,您可能需要更新构建代理文件夹中的“settings.json”文件,并将旧 URL 替换为新 URL。更改此文件后,重新启动构建代理服务,然后返回代理池,刷新页面。

【讨论】:

  • 您是否在 Windows Server 2008 R2 上运行?如果是这样,则有相同的错误信息相关可能有用blogs.msdn.microsoft.com/taylaf/2010/02/10/… 和相关的修补程序:support.microsoft.com/en-us/help/981898/…
  • 那么你的 tfs 服务器 url 现在是什么 http://tfs-server:8080/tfshttps://xxx
  • 你知道吗,我认为 Fiddler 导致了这个问题,它已经使用了证书,现在一切都搞砸了。我必须安装 Fiddler 来调试另一个问题,这导致了这个问题。你知道如何清理 Fiddler 的烂摊子吗?
  • 为了清理 Fiddler 的混乱,似乎 Fiddler 通过充当代理来捕获流量。请查看此博客Fiddler conflict with Team Foundation Server,这可能会奏效。我也想出一个新点子,你有没有尝试在构建代理的配置中直接使用IP作为服务器地址?
  • 上述链接技巧不起作用。我认为它与您之前提到的证书有更多关系,因为我可以看到 Fiddler 添加了一个 do_not_trust_fiddlerroot 证书,该证书通过了当前我的或受信任的根。
猜你喜欢
  • 1970-01-01
  • 2019-12-16
  • 1970-01-01
  • 1970-01-01
  • 2021-05-24
  • 2018-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多