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

Node.js+PM2环境下ReferenceError: dotenv is not defined问题求助

Node.js+PM2环境下ReferenceError: dotenv is not defined问题求助

我在使用PM2管理的Node.js后端应用中遇到了ReferenceError: dotenv is not defined的问题,以下是详细情况:

环境详情

  • Node.js版本:18.20.5
  • PM2版本:5.x
  • 后端框架:Express.js

问题说明

当我尝试用PM2启动应用时,日志里出现了如下错误:

ReferenceError: dotenv is not defined
    at Object.<anonymous> (/root/DevTrust/backend/server.js:20:1)
    at Module._compile (node:internal/modules/cjs/loader:1364:14)

我已经尝试过的解决方法

  • 执行命令安装dotenv:npm install dotenv --force
  • 通过npm list dotenv确认它已经在node_modules目录中
  • 确保server.js文件顶部已经添加了:
    require('dotenv').config();
    
  • 确认backend文件夹下存在.env文件,且包含所需变量:
    OPENAI_API_KEY=your_actual_api_key
    
  • 重启PM2服务:
    pm2 restart backend
    pm2 save
    
  • 尝试直接用node server.js启动服务器,这种方式完全正常

PM2日志情况

运行pm2 logs backend --lines 50时,日志里反复出现ReferenceError: dotenv is not defined错误。

预期与实际结果

  • 预期行为:后端服务器通过PM2启动时,能正常从.env文件加载环境变量,无报错
  • 实际行为:持续出现ReferenceError: dotenv is not defined错误

请问怎么才能确保PM2运行后端服务器时,dotenv能被正确加载和识别呢?

任何见解或建议都非常感谢,提前谢谢大家!

备注:内容来源于stack exchange,提问作者nothing

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 16:43:01