You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R更新后执行栅格分析出现CertGetCertificateChain信任错误(GDAL错误1)求助

问题描述

执行栅格分析时出现以下警告:

  • PROJ: 无法打开 https://cdn.proj.org/us_noaa_cohpgn.tif: schannel: CertGetCertificateChain 信任错误 CERT_TRUST_IS_UNTRUSTED_ROOT (GDAL error 1)
  • 访问远程资源时出现网络错误 (GDAL error 1)

使用的代码

library(raster)
library(trend)
library(terra)
library(zyp)

p.val.func <- function(x,na.rm=T) {
  if(sum(is.na(x)) == length(x)) return(NA)
  if(na.rm) x <- x[!is.na(x)]
  unlist(sens.slope(x)[3]) 
}

sen.slope.func <- function(x,na.rm=T) {
  if(sum(is.na(x)) == length(x)) return(NA)
  if(na.rm) x <- x[!is.na(x)]
  unlist(sens.slope(x)[1]) 
}

sens.int.func<- function(x,na.rm=T){
  if(sum(is.na(x)) == length(x)) return(NA)
  if(na.rm) x <- x[!is.na(x)]
  y<-c()
  y<-c(1:nlyr(x))
  zyp.sen(x~y)$coefficients[1] 
}


# 指向所有栅格文件
cov_rasters<- list.files("D:\\RAP_CO_ALL\\InputCoverStacks", full.names=T, pattern=".tif$")
r1<-rast(cov_rasters[1])  #加载一个栅格用于投影 shp

shp<- vect("C:\\tmp\\GIS_projects_tmp\\UFO_test\\AlakaliCrkAllotsHUC10_AOI")


shp<- terra::project(shp, crs(r1)) # 投影操作

会话信息

  • R版本:4.3.1 (2023-06-16 ucrt)
  • 平台:x86_64-w64-mingw32/x64 (64位)
  • 运行环境:Windows 10 x64 (版本19045)
  • 区域设置:
    • LC_COLLATE=English_United States.1252
    • LC_CTYPE=English_United States.1252
    • LC_MONETARY=English_United States.1252
    • LC_NUMERIC=C
    • LC_TIME=English_United States.1252
  • 时区:America/Denver
  • 已加载包:
    • 基础包:stats、graphics、grDevices、utils、datasets、methods、base
    • 其他已加载包:rgdal_1.6-7、zyp_0.11-1、Kendall_2.2.1、terra_1.7-39、trend_1.1.5、raster_3.6-23、sp_2.0-0
    • 命名空间加载(未附加):R6_2.5.1、codetools_0.2-19、lattice_0.21-8、remotes_2.4.2.1、grid_4.3.1、compiler_4.3.1、extraDistr_1.9.1、httr_1.4.7、boot_1.3-28.1、tools_4.3.1、curl_5.0.2、Rcpp_1.0.11

已尝试重启会话,问题未解决。

解决方案

该错误是PROJ尝试下载远程栅格文件时触发的证书信任问题,可通过以下方式解决:

  1. 禁用PROJ远程资源访问
    在代码开头添加环境变量设置,强制PROJ仅使用本地投影数据库,不再访问远程资源:
Sys.setenv(PROJ_NETWORK="OFF")
  1. 手动放置所需文件
    若确实需要该远程栅格文件,可手动下载us_noaa_cohpgn.tif,并放置到PROJ本地数据目录。执行以下命令查看目录路径:
system("projinfo --path")
  1. 更新Windows根证书
    这是Windows系统根证书信任问题,可通过以下操作更新:
  • 打开「Internet选项」→「内容」→「证书」→「受信任的根证书颁发机构」
  • 点击「导入」,或通过Windows Update自动更新证书库
  1. 更新GDAL/PROJ相关R包
    尝试更新terra、rgdal等依赖包,新版本可能修复了证书兼容性问题:
update.packages(c("terra", "rgdal", "raster"))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 11:43:17