底层连接已关闭:发送时发生意外错误.--- NuGet

时间:2014-11-14 10:44:40

标签: visual-studio nuget nuget-server

在尝试恢复nuget包时,我得到以下内容: -

  

错误1基础连接已关闭:发送时发生意外错误。

     

错误2基础连接已关闭:无法为SSL / TLS安全通道建立信任关系。

     

错误3命令"" D:\ root \ .nuget \ NuGet.exe"安装" D:\ root \ packages.config" -source"" -NonInteractive -RequireConsent -solutionDir" D:\ root \""退出代码1.

     

错误4元数据文件' D:\ root \ project.Website.dll'找不到D:\ root \ project.UnitTests \ CSC

我尝试了提供的解决方案:Visual Studio 2010 nuget error: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel

我尝试了提供的解决方案:https://nuget.codeplex.com/discussions/275537

它们都不起作用,我想知道是否还有其他人正在解决这个问题?如果是这样,有人提出解决方案吗?

看起来,可能是一个等待游戏,以便修复SSL证书。

经过Fiddler的进一步调试后,我收到了以下回复:

  

fiddler.network.https>与az320820.vo.msecnd.net的HTTPS握手失败。 System.IO.IOException无法从传输连接读取数据:远程主机强制关闭现有连接。 <远程主机

强制关闭现有连接

如果我是正确的,似乎我被拒绝但是服务器,不知道为什么,我希望这很快就能解决它。

现在我已经设法从其他没有清除包缓存并继续以这种方式开发的开发者那里获得包的副本。

有人在代码丛中提出了这个问题,希望我们能尽快到达某个地方:https://nuget.codeplex.com/workitem/4372

更新

截至11月17日,这似乎再次奏效。 NuGet正确地告诉我它在获取Ninject.Web.Common.3.2.0.0的旧版本时遇到了问题,但我们有更新的版本,这很好。

5 个答案:

答案 0 :(得分:5)

我在使用Visual Studio 2015的企业代理背后看到了这个问题,它利用了新的v3 API(https://api.nuget.org/v3/index.json)。在我的实例中,它与SSL拦截公司代理(BlueCoat)有关,该代理不知道如何处理由我认为的API端点协商的更新的密码协议(例如:TLS 1.2加上一些更新的密钥交换密码)。

答案 1 :(得分:3)

在调用我的网络管理员之前,我遇到了同样的问题。我们发现我们的IPS将域名标记为恶意软件,我们在内部网络级别将其屏蔽。

一旦我们删除了阻止,现在一切都在恢复。

我们也遇到了从codeplex项目网站获取图像和css的问题,这也解决了这个问题。

答案 2 :(得分:1)

Visual Studio 2015用户的快速修复方法是将URL从https更改为http。我觉得如果软件包有https许可证文件,这可能不起作用。

或者,切换到Visual Studio 2013以进行软件包安装和更新。

答案 3 :(得分:0)

检查您的互联网连接是否正常,并且在Internet Explorer LAN设置中设置并启用了代理。在我的情况下,它试图从互联网上下载并失败,因为我的代理被禁用了!希望这会有所帮助...

答案 4 :(得分:-1)

输入此命令

在Linux上 在执行Git命令之前,在命令行中执行以下命令:

export GIT_TRACE_PACKET=1;export GIT_TRACE=1;export GIT_CURL_VERBOSE=1

在Windows上 在执行Git命令之前,在命令行中执行以下命令:

set GIT_TRACE_PACKET=1 set GIT_TRACE=1 set GIT_CURL_VERBOSE=1