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

部署Node Express服务到Heroku出现H10应用崩溃错误如何解决?

Heroku部署Node Express服务H10报错修复步骤

H10错误本质是应用进程启动后崩溃退出,你已经完成的基础配置是正确的,可按照以下顺序排查问题:

  • 首先确认本地服务可正常启动:本地执行node index.js,访问对应端口确认没有报错,所有功能正常运行。
  • 检查依赖配置:所有运行时需要的依赖(如express、数据库驱动、中间件等)必须放在package.json的dependencies字段下,不要放在devDependencies中,Heroku部署默认不会安装开发依赖。
  • 修正Procfile配置:
    • 文件名必须为Procfile(首字母大写,无文件后缀,不要命名为procfile、Procfile.txt等)
    • 内容格式必须为web: node index.js,注意冒号后需要加空格,你当前的web:node index.js缺少空格会导致启动命令识别失败。
  • 检查端口绑定代码:确保你的监听代码写法如下,不要绑定固定IP、不要写死端口:
    app.listen(process.env.PORT || 3000, '0.0.0.0', () => {
      console.log('服务启动成功')
    })
    
  • 配置环境变量:你本地使用的所有.env中的配置项,都需要在Heroku应用后台的「设置」-「Config Vars」中手动添加,Heroku不会读取你项目中的.env文件。
  • 指定Node版本:在package.json中添加engines字段,和你本地运行的Node、npm版本保持一致,避免版本兼容问题:
    "engines": {
      "node": "你的本地Node版本号,比如16.x",
      "npm": "你的本地npm版本号,比如8.x"
    }
    
  • 查看详细报错日志:执行heroku logs --tail --app 你的Heroku应用名,可以看到应用启动过程中的具体报错(比如缺少模块、数据库连接失败等),定位具体问题后针对性修复。

所有修改完成后,重新提交代码执行git push heroku master即可。

内容的提问来源于stack exchange,提问作者jethro-dev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 17:54:01