通过 QGIS 服务器的 GDAL vsis3

GDAL vsis3 through QGIS Server

我正在尝试通过 QGIS Server 为 WMS 提供服务,基于使用 vsis3 接口引用数据的项目文件,但它不起作用。

尽管尝试将 AWS_REGION、AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 变量设置为服务器上的全局环境变量以及 FcgidInitialEnv 在httpd.conf 文件(我使用的是 Apache)。

由于全局 AWS_* 环境变量,项目文件在 QGIS 桌面界面中工作正常,所以我怀疑 QGIS Server 没有正确使用环境变量或 httpd.conf 中设置的变量。在 httpd.conf 文件中使用 FcgidInitialEnv 设置 QGIS_SERVER_LOG_FILE 和 CPL_LOG,我可以在 QGIS Server 日志文件中看到 "Data source is invalid ()"(遗憾的是括号内没有 CPL 错误代码)和 "ERROR 15: AWS_SECRET_ACCESS_KEY configuration option not defined" 在 CPL 日志文件中,表明 GDAL 代码中的 getenv("AWS_SECRET_ACCESS_KEY") 没有 return 任何东西,尽管我以两种不同的方式设置它,所以我最初的怀疑可能是正确的。

有人知道吗?如何通过 QGIS Server 将 AWS_* 变量正确传递给 GDAL?

已解决!为了将来参考,我不得不对 AWS_* 变量使用 SetEnv 而不是 FcgidInitialEnv 或 DefaultInitEnv,所以我猜它们显示为普通环境变量。