【问题标题】:download.file() error: InternetOpenURL failed: 'An error occurred in the secure channel support'download.file() 错误:InternetOpenURL 失败:“安全通道支持发生错误”
【发布时间】:2020-03-24 19:55:37
【问题描述】:

我正在尝试在 Rstudio 中从 GitHub 安装一个包 (gg3D)。我无法使用安装它

devtools::install_github("AckerDWM/gg3D")

(错误:无法从 GitHub 安装“gg3D”)。我尝试更改下载方法(curllibcurl 等)但无济于事。然后我决定下载源文件并尝试手动安装。下载文件也不起作用:

source_URL <- "http://github.com/repos/AckerDWM/gg3D/archive/master.zip"
utils::download.file(source_URL, destfile = "tmp.zip")

这是我收到错误消息的时候:InternetOpenURL failed: 'An error occurred in the secure channel support'

我认为这是防火墙/代理问题(我在另一台具有类似规格的计算机上下载它没有问题)。

如果有帮助,我在 Windows 7 上运行 R 版本 3.6.1。


只关注下载错误,我的尝试

  1. 更改 download.file method(默认为 wininet),例如
    • utils::download.file(source_URL, destfile = "tmp.zip", method = "libcurl") 返回为 HTTP status was '404 Not Found' 错误;
    • utils::download.file(source_URL, destfile = "tmp.zip", method = "curl") 返回'curl' call had nonzero exit status
    • 如上method = "wget"
  2. 在 RStudio 菜单上,工具 > 全局选项... > 包 > 并取消选中“使用 HTTP 安全下载方法”框。没有效果。
  3. setInternet2(use = FALSE)(R 警告说它已经失效)。
  4. 尝试httphttps

这些建议的解决方案来自以下链接的 SO 文章(但它们对我不起作用):

类似于(无解):

【问题讨论】:

  • 过去,我遇到过类似的问题,通过更改 CRAN 镜像解决了。不幸的是,作为 Github 上的一个包,这不是一个选项。但它确实让我认为这是一个防火墙/代理问题(基于链接的 SO 文章上使用的语言 - 我实际上并不知道这意味着什么)。
  • 我刚刚在我的家用电脑(没有防火墙)上测试了这个,我得到了同样的错误。这就是:以太网上的工作计算机成功(无错误);同一工作网络上通过 wifi 连接的笔记本电脑出现 1 个错误;家庭计算机/网络上出现 1 个错误。

标签: r http curl github devtools


【解决方案1】:

我遇到了同样的问题,但使用了其他包。尝试更改 CRAN 镜像但没有成功。然后在 Microsoft 页面上找到了一些帮助,并从控制面板更改了 Internet 选项中的一些设置。确保您已检查 SSL 2.0 和 3.0。此外,请检查 TLS 1.1 和 TLS 1.2。此更改解决了我的问题。希望这会有所帮助。

【讨论】:

  • 不幸的是,我无法再访问出现此问题的计算机来测试这是否解决了我的问题。但希望它可以帮助其他人解决这个问题。
猜你喜欢
  • 2017-10-18
  • 2015-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-13
  • 1970-01-01
  • 2012-10-07
相关资源
最近更新 更多