no internet connection
原因是 Bioconductor.org 最新的ssl证书 win7 curl 都不支持 需要打补丁和下载证书
config.yaml 先到 Bioconductor.org/config.yaml 下载
options(download.file.method = "libcurl")
options(BIOCONDUCTOR_CONFIG_FILE = "K:/download/geo/config.yaml") # 请将路径替换为你实际保存的config.yaml文件路径
# 设置正确的 Bioconductor 镜像
options(BioC_mirror = "https://bioconductor.statistik.tu-dortmund.de")
# 设置 CRAN 镜像
options(repos = c(CRAN = "https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
# 安装 BiocManager
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
# 安装依赖包
BiocManager::install(c("DOSE", "org.Hs.eg.db", "AnnotationDbi", "enrichplot"))
# 安装 clusterProfiler
BiocManager::install("clusterProfiler")
设置不检查SSL证书(适用于某些SSL证书错误的情况)
options(download.file.method = “wget”, download.file.extra = “–no-check-certificate”)
或者尝试
options(download.file.method = "libcurl")
options(download.file.method = "libcurl",
download.file.extra = c("--tlsv1.2", "-4"))
options(download.file.method = "libcurl",
download.file.extra = c("--tlsv1.2", "-4"))
或者尝试
options(download.file.method = "curl", download.file.extra = "-k")
或者尝试
options(download.file.method = “wininet”, ssl.verifypeer = FALSE)
url: (35) schannel: next InitializeSecurityContext failed: SEC_E_ILLEGAL_MESSAGE (0x80090326) - This error usually occurs when a fatal SSL/TLS alert is received (e.g. handshake failed). More detail may be available in the Windows System event log.
编辑
复制
faviconfaviconfaviconfaviconfavicon
curl: (35) schannel: next InitializeSecurityContext failed: SEC_E_ILLEGAL_MESSAGE
这个错误是 Windows 的 Schannel(安全通道)在 TLS 握手阶段收到“非法消息” 时抛出的通用码,0x80090326 / SEC_E_ILLEGAL_MESSAGE 并不是 R 或 curl 本身的 bug,而是底层 TLS 连接被服务器(或中间设备)以 fatal alert 形式拒绝。
结合 2024-2025 年社区与官方文档的汇总,常见触发场景与对应对策如下:
- 协议/加密套件不匹配(最高发)
表现:服务器只接受 TLS 1.2+,而客户端默认发 TLS 1.0/1.1;
或服务器仅支持 ECDHE 套件,而老系统没有启用相应算法。
快速验证
在 PowerShell 依次尝试:
复制
curl -v --tlsv1.2 https://bioconductor.org
curl -v --tlsv1.3 https://bioconductor.org
若只有旧协议失败即可确认。
修复
升级 R ≥ 4.3(内置 libcurl 已默认 TLS 1.3)。
在 .Rprofile 里强制 libcurl + 高协议:
r
复制
options(download.file.method = “libcurl”,
download.file.extra = c(“–tlsv1.2”, “–tlsv1.3”)) - 系统 Schannel 配置被策略/更新锁死
表现:同一台机器浏览器可访问,curl 报 0x80090326;
事件查看器 → Windows 日志 → 系统 里出现 Schannel 36871/36884。
原因:某些企业加固脚本或 2023-03 之后的 Windows 更新把 TLS 1.0/1.1、RC4、3DES 等全部关闭,注册表缺相应键值。
修复(管理员 PowerShell):
powershell
复制
重新启用 TLS 1.2(客户端)
New-Item ‘HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client’ -Force
New-ItemProperty -Path ‘HKLM:…TLS 1.2\Client’ -Name ‘Enabled’ -Value 1 -PropertyType DWORD
New-ItemProperty -Path ‘HKLM:…TLS 1.2\Client’ -Name ‘DisabledByDefault’ -Value 0 -PropertyType DWORD
如确认不再需要 TLS 1.0/1.1,可反向关闭避免握手混淆
改完重启系统生效。
3. 通过 IP 或 hosts 文件访问,缺少 SNI
表现:curl -k https://127.0.0.1:443 或 https://192.168.x.x 立即 0x80090326;
浏览器同样 IP 访问也失败。
原因:现代 Web 服务器(nginx、Cloudflare)强制要求 SNI;
Schannel 用 IP 地址握手时不会发送 Server Name,服务器回 fatal alert。
修复
给 curl 显式加 SNI:
curl --resolve bioconductor.org:443:104.21.15.139 https://bioconductor.org
在 R 内使用镜像域名而非裸 IP。
4. 代理/MITM 设备篡改证书链
表现:只有公司网络/校园网上出现;
抓包能看到服务器返回 Alert (Level: Fatal, Description: Illegal Parameter)。
修复
把代理根证书导入“受信任的根证书颁发机构”;
或者改用带 --insecure 的 libcurl(仅测试,不推荐长期)。
5. IPv6 优先但网络侧 IPv6 黑洞
表现:curl 先尝试 IPv6 地址 → 连接建立 → TLS 握手阶段被静默丢弃 → 0x80090326。
修复
临时强制 IPv4:
curl -4 https://bioconductor.org
或在 Windows 网络适配器里取消勾选“Internet 协议版本 6”。
6. 系统根证书或补丁缺失
表现:全新安装的 Windows 7/8.1、LTSC 2016 访问任何现代站点都 0x80090326。
修复
安装 KB3140245 + 对应根证书更新包;
或者直接升级到 Windows 10/11 最新累积补丁。
一键排查顺序(建议按序号执行)
升级 R 与 curl
r
复制
install.packages(“curl”) # 确保用 5.0.0+ 二进制
换协议 + 强制 IPv4
r
复制
options(download.file.method = “libcurl”,
download.file.extra = c(“–tlsv1.2”, “-4”))
hosts 里用域名,不用 IP;若必须 IP,就加 --resolve。
PowerShell 看事件日志
Get-WinEvent -FilterHashtable @{LogName=‘System’; ID=36871,36884} -MaxEvents 10
有记录 → 按场景 2 修注册表。
仍失败就抓包(Wireshark/filter: tls.alert)确认服务器发的具体 alert 类型,再对症调整。
只要服务器端没有封 IP,走完上面 5 步,0x80090326 基本都能消除;如还有疑问,把 curl -v 完整输出贴出来即可继续定位。祝安装 Bioconductor 顺利!
连接问题解决办法
options(BIOCONDUCTOR_CONFIG_FILE = “K:/download/geo/config.yaml”) # 请将路径替换为你实际保存的config.yaml文件路径
BiocManager::install(“GEOquery”)
library(GEOquery)
下载的时候 不用https 就行了啊,镜像用
http 而不是 https 就行了
options(BioC_mirror = “http://mirrors.ustc.edu.cn/bioc/”)
但是很多镜像是不能用的
总结,德国站最全面 ,美国站 日本站 可以用,台湾站能下载包,韩国站的包不全,中国大陆站据说清华和西湖大学能用,但是我用了 不行啊
网络问题 ,直接下载这个文件 “K:/download/geo/config.yaml” 即可
options(BIOCONDUCTOR_CONFIG_FILE = “K:/download/geo/config.yaml”) # 请将路径替换为你实际保存的config.yaml文件路径
BiocManager::install(“GEOquery”)
library(GEOquery)
- List item
经过检查 台湾新竹的镜像是能直接下载 包,但是不没有其他信息的 不能用 命令行下载
http://free.nchc.org.tw/bioconductor/packages/3.20/bioc/bin/macosx/big-sur-x86_64/contrib/4.5/
- 韩国 https://cran.asia/bin/windows/contrib/4.6/ 是其他的包 好像 不是 bioconductor的
BioManager 全球镜像关键网址汇总
以下是配置文件中所有镜像节点的 核心访问网址(含 HTTP/HTTPS 协议),按国家/地区分类整理,方便直接使用以加速 Bioconductor 包的下载与安装:
1. 全球(默认自动重定向)
- HTTP 地址:http://bioconductor.org/
- HTTPS 地址:https://bioconductor.org/
2. 美国
- 机构:Posit Software, PBC
- HTTP 地址:http://bioconductor.posit.co/
- HTTPS 地址:https://bioconductor.posit.co/
3. 德国
(1)多特蒙德工业大学统计系
德国的非常详细 R语言和bioc的对应关系都有 还给你分好类,软件,数据,缺点就是网速慢
推荐 install 的时候 ,用他作为镜像源
- HTTP 地址:http://bioconductor.statistik.tu-dortmund.de/
- HTTPS 地址:https://bioconductor.statistik.tu-dortmund.de/
(2)GWDG(德国科学数据中心)
ftp形式 程序文件全,但是其他描述 数据什么的没有,
支持http协议
例如 http://ftp.gwdg.de/pub/misc/bioconductor/packages/3.2/bioc/bin/windows/contrib/3.2/
- HTTP 地址:http://ftp.gwdg.de/pub/misc/bioconductor/
- HTTPS 地址:https://ftp.gwdg.de/pub/misc/bioconductor/
4. 日本
镜像网页站,不是镜像ftp站,网页打开有点慢吗,包的下载速度还行
- 机构:理化学研究所先进计算与通信中心
- HTTP 地址:http://bioconductor.riken.jp/
- HTTPS 地址:https://bioconductor.riken.jp/
5. 中国台湾
- 机构:国家高速网络与计算中心
- 只有macox的程序包的下载,连windows的包 没有 ,其他没有,
- 而且只有3.9 3.19 3.20
- HTTP 地址:http://free.nchc.org.tw/bioconductor/
- HTTPS 地址:https://free.nchc.org.tw/bioconductor/
6. 中国内地
好像通通不行,
但是这个注释 能下载
https://mirrors.tuna.tsinghua.edu.cn/bioconductor/packages/release/data/annotation/src/contrib/
(1)清华大学 TUNA 镜像站
- HTTP 地址:http://mirrors.tuna.tsinghua.edu.cn/bioconductor/
- HTTPS 地址:https://mirrors.tuna.tsinghua.edu.cn/bioconductor/
(2)南京大学 eScience 中心
- HTTP 地址:http://mirrors.nju.edu.cn/bioconductor/
- HTTPS 地址:https://mirrors.nju.edu.cn/bioconductor/
(3)中国科学技术大学
- HTTP 地址:http://mirrors.ustc.edu.cn/bioc/
- HTTPS 地址:https://mirrors.ustc.edu.cn/bioc/
(4)西湖大学高性能计算中心
- HTTPS 地址:https://mirrors.westlake.edu.cn/bioconductor
(5)浙江大学
- HTTPS 地址:https://mirrors.zju.edu.cn/bioconductor
7. 挪威
- 机构:卑尔根大学
- HTTP 地址:http://bioconductor.uib.no/
- HTTPS 地址:https://bioconductor.uib.no/
8. 意大利
- 机构:比萨大学
- HTTP 地址:http://bioconductor.unipi.it
- HTTPS 地址:https://bioconductor.unipi.it
9. 韩国
- 机构:CRAN Asia
- https://cran.asia/bin/windows/contrib/4.6/ 是其他的包 好像 不是 bioconductor的
- HTTP 地址:http://cran.asia
- HTTPS 地址:https://cran.asia
10. 澳大利亚
不行,文件都缺失
- 机构:AARNet Pty Ltd(澳大利亚学术研究网络)
- HTTP 地址:http://mirror.aarnet.edu.au/pub/bioconductor
- HTTPS 地址:https://mirror.aarnet.edu.au/pub/bioconductor
11. 丹麦
不全
- 机构:dotsrc(开源镜像项目)
- HTTP 地址:http://mirrors.dotsrc.org/bioconductor/
- HTTPS 地址:https://mirrors.dotsrc.org/bioconductor/
12. 瑞典
有一些索引,但是缺关键的包和数据的下载
- 机构:于默奥大学学术计算机俱乐部
- HTTP 地址:http://mirror.accum.se/mirror/bioconductor.org/
- HTTPS 地址:https://mirror.accum.se/mirror/bioconductor.org/
BioManager 各国镜像资源总结
该配置文件中包含 BioManager(Bioconductor 包管理工具)的全球镜像节点信息,按国家/地区分类整理如下,涵盖镜像所属机构、关键联系信息及访问地址等核心内容,方便用户根据地理位置选择就近镜像以提升包下载安装速度。
| 国家/地区 | 镜像机构 | 城市 | 联系人/联系邮箱 | 镜像地址(HTTP/HTTPS) |
|---|---|---|---|---|
| 全球(默认) | Bioconductor(自动重定向) | 全球范围 | Bioconductor Maintainer / maintainer@bioconductor.org | HTTP: http://bioconductor.org/ HTTPS: https://bioconductor.org/ |
| 美国 | Posit Software, PBC | 波士顿 | Joshua Spiewak / bioconductor@posit.co | HTTP: http://bioconductor.posit.co/ HTTPS: https://bioconductor.posit.co/ |
| 德国 | 1. 多特蒙德工业大学统计系 2. GWDG(德国科学数据中心)德国的非常详细 R语言和bioc的对应关系都有 还给你分好类,软件,数据,缺点就是网速慢 | 1. 多特蒙德 2. 哥廷根 | 1. Uwe Ligges / ligges@statistik.tu-dortmund.de 2. Tim Ehlers、Steffen Klemer / ftpmaster@gwdg.de | 1. 德国的非常详细 R语言和bioc的对应关系都有 还给你分好类,软件,数据,HTTP: http://bioconductor.statistik.tu-dortmund.de/ HTTPS: https://bioconductor.statistik.tu-dortmund.de/ 2. HTTP: http://ftp.gwdg.de/pub/misc/bioconductor/ HTTPS: https://ftp.gwdg.de/pub/misc/bioconductor/ |
| 日本 | 理化学研究所先进计算与通信中心 | 和光市 | Itoshi NIKAIDO(博士) 日本是直接做的镜像的网站不是ftp形式的那种http://bioconductor.riken.jp/packages/3.19/bioc/html/GEOquery.html,网页打开慢,但是下载软件包的速度还不错/ dritoshi@gmail.com | HTTP: http://bioconductor.riken.jp/ HTTPS: https://bioconductor.riken.jp/ |
| 中国台湾 | 国家高速网络与计算中心 | 新竹 | Chenkai Sun / ceasar@narlabs.org.tw | HTTP: http://free.nchc.org.tw/bioconductor/ HTTPS: https://free.nchc.org.tw/bioconductor/ |
| 中国内地,好像没有一个可以用的 | 1. 清华大学 TUNA 镜像站 2. 南京大学 eScience 中心 3. 中国科学技术大学 4. 西湖大学高性能计算中心 5. 浙江大学 | 1. 北京 2. 南京 3. 合肥(安徽) 4. 杭州(西湖区) 5. 杭州(浙江大学) | 1. Miao Wang / mirroradmin@tuna.tsinghua.edu.cn 2. Ge Yao / yaoge@nju.edu.cn 3. Linux 用户组(LUG@USTC) / lug@ustc.edu.cn 4. Ling Yang / yangling@westlake.edu.cn 5. ZJUSCT Team Falcon / mirrors@zju.edu.cn | 1. HTTP: http://mirrors.tuna.tsinghua.edu.cn/bioconductor/ HTTPS: https://mirrors.tuna.tsinghua.edu.cn/bioconductor/ 2. HTTP: http://mirrors.nju.edu.cn/bioconductor/ HTTPS: https://mirrors.nju.edu.cn/bioconductor/ 3. HTTP: http://mirrors.ustc.edu.cn/bioc/ HTTPS: https://mirrors.ustc.edu.cn/bioc/ 4. HTTPS: https://mirrors.westlake.edu.cn/bioconductor 5. HTTPS: https://mirrors.zju.edu.cn/bioconductor |
| 挪威 | 卑尔根大学 | 卑尔根 | Trond Davidsen / Trond.Davidsen@it.uib.no | HTTP: http://bioconductor.uib.no/ HTTPS: https://bioconductor.uib.no/ |
| 意大利 | 比萨大学 | 比萨 | Fabio Pratelli / fabio.pratelli@unipi.it | HTTP: http://bioconductor.unipi.it HTTPS: https://bioconductor.unipi.it |
| 韩国 | CRAN Asia | 首尔 | Seongho Bae / admin@cran.asia | HTTP: http://cran.asia HTTPS: https://cran.asia |
| 澳大利亚 | AARNet Pty Ltd(澳大利亚学术研究网络) | 悉尼 | AARNet 运营中心 / mirror@aarnet.edu.au | 没有什么用 HTTP: http://mirror.aarnet.edu.au/pub/bioconductor HTTPS: https://mirror.aarnet.edu.au/pub/bioconductor |
| 丹麦 | dotsrc(开源镜像项目) | 奥尔堡 | Anders Trier Olesen / staff@dotsrc.org | HTTP: http://mirrors.dotsrc.org/bioconductor/ HTTPS: https://mirrors.dotsrc.org/bioconductor/ |
| 瑞典 | 于默奥大学学术计算机俱乐部 | 于默奥 | FTP 管理员 / ftp-adm@accum.se | 速度快 但是好像缺文件 HTTP: http://mirror.accum.se/mirror/bioconductor.org/ HTTPS: https://mirror.accum.se/mirror/bioconductor.org/ |
✅ 其他方法2. 设置代理
Sys.setenv(http_proxy = “http://127.0.0.1:7890”)
Sys.setenv(https_proxy = “http://127.0.0.1:7890”)
第三个方法 手动下载库
##这个错误是 Windows 的 Schannel(安全通道)在 TLS 握手阶段收到“非法消息” 时抛出的通用码,0x80090326 / SEC_E_ILLEGAL_MESSAGE 并不是 R 或 curl 本身的 bug,而是底层 TLS 连接被服务器(或中间设备)以 fatal alert 形式拒绝。
结合 2024-2025 年社区与官方文档的汇总,常见触发场景与对应对策如下:
1. 协议/加密套件不匹配(最高发)
- 表现:服务器只接受 TLS 1.2+,而客户端默认发 TLS 1.0/1.1;
或服务器仅支持 ECDHE 套件,而老系统没有启用相应算法。 - 快速验证
在 PowerShell 依次尝试:
若只有旧协议失败即可确认。curl -v --tlsv1.2 https://bioconductor.org curl -v --tlsv1.3 https://bioconductor.org - 修复
- 升级 R ≥ 4.3(内置 libcurl 已默认 TLS 1.3)。
- 在
.Rprofile里强制 libcurl + 高协议:options(download.file.method = "libcurl", download.file.extra = c("--tlsv1.2", "--tlsv1.3"))
2. 系统 Schannel 配置被策略/更新锁死
- 表现:同一台机器浏览器可访问,curl 报 0x80090326;
事件查看器 → Windows 日志 → 系统 里出现 Schannel 36871/36884。 - 原因:某些企业加固脚本或 2023-03 之后的 Windows 更新把 TLS 1.0/1.1、RC4、3DES 等全部关闭,注册表缺相应键值。
- 修复(管理员 PowerShell):
改完重启系统生效。# 重新启用 TLS 1.2(客户端) New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -Force New-ItemProperty -Path 'HKLM:\...TLS 1.2\Client' -Name 'Enabled' -Value 1 -PropertyType DWORD New-ItemProperty -Path 'HKLM:\...TLS 1.2\Client' -Name 'DisabledByDefault' -Value 0 -PropertyType DWORD # 如确认不再需要 TLS 1.0/1.1,可反向关闭避免握手混淆
3. 通过 IP 或 hosts 文件访问,缺少 SNI
- 表现:
curl -k https://127.0.0.1:443或https://192.168.x.x立即 0x80090326;
浏览器同样 IP 访问也失败。 - 原因:现代 Web 服务器(nginx、Cloudflare)强制要求 SNI;
Schannel 用 IP 地址握手时不会发送 Server Name,服务器回 fatal alert。 - 修复
- 给 curl 显式加 SNI:
curl --resolve bioconductor.org:443:104.21.15.139 https://bioconductor.org - 在 R 内使用镜像域名而非裸 IP。
- 给 curl 显式加 SNI:
4. 代理/MITM 设备篡改证书链
- 表现:只有公司网络/校园网上出现;
抓包能看到服务器返回 Alert (Level: Fatal, Description: Illegal Parameter)。 - 修复
- 把代理根证书导入“受信任的根证书颁发机构”;
- 或者改用带
--insecure的 libcurl(仅测试,不推荐长期)。
5. IPv6 优先但网络侧 IPv6 黑洞
- 表现:curl 先尝试 IPv6 地址 → 连接建立 → TLS 握手阶段被静默丢弃 → 0x80090326。
- 修复
临时强制 IPv4:
或在 Windows 网络适配器里取消勾选“Internet 协议版本 6”。curl -4 https://bioconductor.org
6. 系统根证书或补丁缺失
- 表现:全新安装的 Windows 7/8.1、LTSC 2016 访问任何现代站点都 0x80090326。
- 修复
- 安装 KB3140245 + 对应根证书更新包;
- 或者直接升级到 Windows 10/11 最新累积补丁。
一键排查顺序(建议按序号执行)
-
升级 R 与 curl
install.packages("curl") # 确保用 5.0.0+ 二进制 -
换协议 + 强制 IPv4
options(download.file.method = "libcurl", download.file.extra = c("--tlsv1.2", "-4")) -
hosts 里用域名,不用 IP;若必须 IP,就加
--resolve。 -
PowerShell 看事件日志
Get-WinEvent -FilterHashtable @{LogName='System'; ID=36871,36884} -MaxEvents 10有记录 → 按场景 2 修注册表。
-
仍失败就抓包(Wireshark/filter:
tls.alert)确认服务器发的具体 alert 类型,再对症调整。
只要服务器端没有封 IP,走完上面 5 步,0x80090326 基本都能消除;如还有疑问,把 curl -v 完整输出贴出来即可继续定位。祝安装 Bioconductor 顺利!
1879

被折叠的 条评论
为什么被折叠?



