FTP 基础连接已经关闭: 接收时发生错误 。怎么解决的,求答案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FTP 基础连接已经关闭: 接收时发生错误 。怎么解决的,求答案相关的知识,希望对你有一定的参考价值。

参考技术A 服务器管了。求管理员开开吧。 参考技术B 重新连接试试,如果不行看下是否是服务器问题 参考技术C 服务器不开你怎么连接,打开服务器并配置好就可以了

Cake.build 错误:“底层连接已关闭:发送时发生意外错误”

【中文标题】Cake.build 错误:“底层连接已关闭:发送时发生意外错误”【英文标题】:Cake.build error : "The underlying connection was closed: An unexpected error occurred on a send" 【发布时间】:2020-12-02 07:47:17 【问题描述】:

尝试在 powershell 中运行构建蛋糕文件时遇到问题。

build.cake 文件的第一行是:#addin "nuget:?package=Cake.SemVer&version=1.0.14" /tools/packages.config 中的版本是<package id="Cake" version="0.21.1" />

这是full script的链接

这对于 Jenkins 和 localhost 是一样的。

在回复中,我也看到了这些行: 正在下载并安装 Roslyn... 安装包(使用https://packages.nuget.org/api/v2)...

我不确定 Roslyn 是否需要此下载,或者通知下载和安装 Roslyn 的步骤...它已经结束,下一步是安装包。

我尝试更新 cake 和 semver 版本。它运行正常:

build.cake
#addin "nuget:?package=Cake.SemVer&version=4.0.0"
#addin "nuget:?package=semver&version=2.0.6"

packages.config
<?xml version="1.0" encoding="utf-8"?>
<packages>
    <package id="Cake" version="0.38.4" />
</packages>

但是在构建的结果中,我没有看到例如“正在下载并安装 Roslyn...”,所以我不确定它是否正常工作:

感谢您的帮助

【问题讨论】:

【参考方案1】:

请确认您的 build.ps1 文件是否包含以下代码行:

https://github.com/cake-build/resources/blob/master/build.ps1#L53-L68

# Attempt to set highest encryption available for SecurityProtocol.
# PowerShell will not set this by default (until maybe .NET 4.6.x). This
# will typically produce a message for PowerShell v2 (just an info
# message though)
try 
    # Set TLS 1.2 (3072), then TLS 1.1 (768), then TLS 1.0 (192), finally SSL 3.0 (48)
    # Use integers because the enumeration values for TLS 1.2 and TLS 1.1 won't
    # exist in .NET 4.0, even though they are addressable if .NET 4.5+ is
    # installed (.NET 4.5 is an in-place upgrade).
    # PowerShell Core already has support for TLS 1.2 so we can skip this if running in that.
    if (-not $IsCoreCLR) 
        [System.Net.ServicePointManager]::SecurityProtocol = 3072 -bor 768 -bor 192 -bor 48
    
   catch 
    Write-Output 'Unable to set PowerShell to use TLS 1.2 and TLS 1.1 due to old .NET Framework installed. If you see underlying connection closed or trust errors, you may need to upgrade to .NET Framework 4.5+ and PowerShell v3'
  

NuGet 已关闭 TLS 1.0 和 1.1,除非进行与上述类似的更改,否则您将无法从 NuGet.org 下载任何包。更多细节可以在这里找到:

https://devblogs.microsoft.com/nuget/nuget-org-will-permanently-remove-support-for-tls-1-0-and-1-1-on-june-15th/

在此 PR 中删除了下载 Roslyn 组件的需要:

https://github.com/cake-build/cake/pull/1645/files

在 Cake v0.22.0 版本中提供。因此,您不会在更新版本的 Cake 中看到有关下载 Roslyn 的消息。

关于你使用的 Cake 的版本,0.21.1,这是 3 年前发布的:

https://www.nuget.org/packages/Cake/0.21.1

除非有令人信服的理由继续使用此版本,否则我建议您切换到使用最新版本。

【讨论】:

谢谢加里。我已经在 build.ps1 文件中添加了这些行,但不幸的是我们在 .NET Framework 4 版本中运行。我们不想更新 Cake 版本,因为它可能会发生重大变化,但我认为我们将不得不重新考虑这一点。再次感谢您

以上是关于FTP 基础连接已经关闭: 接收时发生错误 。怎么解决的,求答案的主要内容,如果未能解决你的问题,请参考以下文章

分析案例:界面提示“基础链接已经关闭:接收时发生错误”----本质为StackOverflow

已解决Https请求——基础连接已经关闭 发送时发生错误

WCF 基础连接已经关闭: 服务器关闭了本应保持活动状态的连接。

底层连接已关闭:接收时发生意外错误

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

httpWebRequest.GetResponse() 基础连接已关闭 发送时发生错误