You need to enable JavaScript to run this app. RStudio(或rterm)访问互联网的进程是什么?Windows防火墙下curl报错如何解决?
优惠活动
大模型
产品
解决方案
定价
更多

RStudio(或rterm)访问互联网的进程是什么?Windows防火墙下curl报错如何解决?

R Windows环境curl类网络功能防火墙异常解决方案

实际发起网络请求的进程说明

RStudio本身只是IDE外壳,所有R语言层面的网络请求(包括curl包调用)都是由R核心运行进程发起,常见对应进程包括:

  • R安装目录下bin/x64/或bin/i386/路径下的R.exe、Rterm.exe、Rscript.exe
  • 部分版本curl包会调用系统内置的curl工具,对应路径可在R中执行Sys.which("curl")查看

可用解决方案

方案1:补全防火墙例外规则

要求IT管理员将以下路径的可执行文件全部添加到Windows防火墙出站规则允许列表:

  • R安装目录下bin文件夹内所有子目录下的全部exe文件(不要只添加RStudio主程序和单个R.exe)
  • 上一步查到的系统curl.exe对应路径的程序
  • 如果有自定义安装的其他R关联网络工具,也同步添加例外

方案2:配置R全局网络代理(无需修改防火墙规则,推荐企业内网环境使用)

如果企业有统一的内网出口代理,可通过配置R环境变量实现网络访问:

  1. 在R控制台执行usethis::edit_r_environ()打开用户级环境配置文件
  2. 在文件中添加以下配置,替换为实际的企业代理地址和端口:
http_proxy=http://代理地址:端口
https_proxy=http://代理地址:端口
no_proxy=localhost,127.0.0.1,企业内部域名
  1. 保存文件后重启R会话即可生效,也可在当前会话临时生效执行:
Sys.setenv(http_proxy = "http://代理地址:端口")
Sys.setenv(https_proxy = "http://代理地址:端口")

方案3:curl包单独适配配置

如果全局代理配置不生效,可单独为curl包设置请求参数:

library(curl)
# 全局配置curl请求默认代理
options(curl_options = list(
  proxy = "http://代理地址:端口",
  ssl_verifypeer = FALSE # 如访问内网自签名证书的服务可添加该参数
))

效果验证

配置完成后执行以下命令验证网络是否正常:

# 返回200即代表请求正常
curl::curl_fetch_memory("https://www.example.com")$status_code

如果访问的目标服务使用非80、443端口,还需管理员放通对应端口的出站访问权限。

内容的提问来源于stack exchange,提问作者user2106769

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 03:24:03