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

Node.js环境下Heroku config vars/env vars配置后不生效问题求助

问题根因

Heroku的heroku ps:exec命令进入运行中dyno的交互环境时,默认不会主动加载应用的配置变量,属于官方设计的预期行为,和你的配置操作无关。

解决方案

  • 第一步:配置变量设置完成后必须重启dyno,新配置才会加载到运行中的实例,执行命令:
heroku ps:restart
  • 第二步:进入exec容器后手动加载应用配置,执行以下命令即可读取到所有通过config:set设置的变量:
source /app/.profile.d/heroku-exec.sh
  • 若需要每次进入exec自动加载配置,可将上述source命令添加到应用根目录的.bashrc文件中。

验证方法

你可以先通过一次性dyno验证配置本身是否生效,执行命令:

heroku run node -e "console.log(process.env.TESTVAR)"

如果该命令正常输出123,说明你的配置完全正确,仅exec环境未加载变量。

额外排查点

如果上述操作后应用运行时仍无法读取变量,检查你的项目启动脚本或框架配置是否存在过滤、覆盖环境变量的逻辑:

  • 部分Node框架会默认仅加载白名单前缀的环境变量
  • 部分自定义启动脚本会在启动时重置process.env对象

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 10:42:00