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

部署在Heroku的Django应用构建完成但无法启动,报H10错误

Django应用Heroku构建成功但启动失败(H10错误)

错误日志

2023-09-04T13:32:07.484629+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=journallove-e9a7a6e26520.herokuapp.com request_id=3515dc4d-fb0c-4ccb-bbdc-cb81a1ae5a31 fwd="130.58.166.192" dyno= connect= service= status=503 bytes= protocol=https
2023-09-04T13:32:07.768182+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=journallove-e9a7a6e26520.herokuapp.com request_id=8c703a21-5109-4f0a-af7a-22c0e2687c8a fwd="130.58.166.192" dyno= connect= service= status=503 bytes= protocol=https
2023-09-04T13:32:14.000000+00:00 app[api]: Build succeeded
2023-09-04T13:32:35.613845+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=journallove-e9a7a6e26520.herokuapp.com request_id=6c9caf84-4fb9-4a08-96ea-ee41bae09184 fwd="130.58.166.192" dyno= connect= service= status=503 bytes= protocol=https
2023-09-04T13:32:35.808771+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=journallove-e9a7a6e26520.herokuapp.com request_id=cd6e61e2-ee17-4f5e-abb4-c2ca33636d17 fwd="130.58.166.192" dyno= connect= service= status=503 bytes= protocol=https
2023-09-04T13:32:45.705631+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=journallove-e9a7a6e26520.herokuapp.com request_id=5d813e56-e116-4432-86f5-1ba43ba9227b fwd="130.58.166.192" dyno= connect= service= status=503 bytes= protocol=https
2023-09-04T13:32:45.899516+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=journallove-e9a7a6e26520.herokuapp.com request_id=14f662de-7547-40d0-bee9-522e847922c4 fwd="130.58.166.192" dyno= connect= service= status=503 bytes= protocol=https

现有配置信息

Procfile

web gunicorn journallove.wsgi:application --log-file - 

requirements.txt

asgiref==3.6.0
blind==0.0.1
blinker==1.6.2
certifi==2023.5.7
charset-normalizer==3.1.0
click==8.1.3
cloudpickle==2.2.1
Cython==0.29.35
distlib==0.3.6
dj-database-url==2.1.0
Django==4.2.1
entrypoints==0.4
filelock==3.12.2
Flask==2.3.2
gitdb==4.0.10
GitPython==3.1.31
greenlet==2.0.2
gunicorn==20.1.0
django-heroku==0.3.1
idna==3.4
itsdangerous==2.1.2
Jinja2==3.1.2
joblib==1.3.1
MarkupSafe==2.1.2
mysql-connector-python==8.0.33
mysqlclient==2.1.1
nltk==3.8.1
numpy==1.24.3
package-json==0.0.0
pandas==2.0.1
platformdirs==3.8.1
protobuf==3.20.3
psycopg2-binary==2.9.7
PyMySQL==1.0.3
pytz==2023.3
PyYAML==6.0
querystring-parser==1.2.4
regex==2023.6.3
requests==2.31.0
six==1.16.0
smmap==5.0.0
SQLAlchemy==2.0.15
sqlparse==0.4.4
templates==0.0.5
tqdm==4.65.0
typing_extensions==4.6.2
tzdata==2023.3
urllib3==2.0.2
views-py==2.0.0
virtualenv==20.23.1
Werkzeug==2.3.4

已尝试将Procfile移至根目录,问题仍未解决。


排查解决步骤

1. 获取应用启动的详细报错日志

当前日志仅显示H10崩溃状态,无具体原因,执行以下命令查看应用启动阶段的日志:

heroku logs --source app --tail

日志中会包含模块缺失、配置错误、数据库连接失败等核心崩溃原因。

2. 修正Procfile格式

Heroku Procfile的标准格式为进程类型: 命令,你的Procfile缺少冒号,导致Heroku无法正确识别启动指令,修改为:

web: gunicorn journallove.wsgi:application --log-file -

同时确保文件名为Procfile(无后缀),且位于项目根目录。

3. 验证WSGI入口路径正确性

确认journallove.wsgi:application路径匹配项目结构:

  • 项目根目录下必须存在journallove文件夹
  • 该文件夹内要有wsgi.py文件,且文件中定义了application变量(Django默认生成的配置中已包含)

4. 清理冗余依赖并修复冲突

你的requirements.txt包含大量无关依赖(如Flask、virtualenv、多个数据库驱动),可能引发依赖冲突或不必要的资源占用:

  • 移除Django应用不需要的依赖:Flask、virtualenv、mysqlclient、mysql-connector-python、PyMySQL(Heroku默认使用PostgreSQL,保留psycopg2-binary即可)
  • 检查并移除版本冲突的依赖,比如blind==0.0.1这类无效包
  • 重新生成干净的requirements.txt:
pip freeze > requirements.txt

5. 检查Django生产环境配置

  • ALLOWED_HOSTS:必须包含Heroku应用域名,避免请求被拦截:
ALLOWED_HOSTS = ['journallove-e9a7a6e26520.herokuapp.com', 'localhost']
  • 数据库配置:确保使用dj-database-url读取Heroku提供的数据库环境变量:
import dj_database_url
DATABASES = {'default': dj_database_url.config(conn_max_age=600)}
  • DEBUG模式:生产环境必须关闭DEBUG,否则可能引发安全问题或崩溃:
DEBUG = False

6. 本地模拟生产环境测试

在本地使用Gunicorn启动应用,验证是否能正常运行:

gunicorn journallove.wsgi:application

如果本地启动失败,先修复本地错误,再重新部署到Heroku。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 23:37:03