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

部署Django应用至Heroku时遭遇Application Error求助

Django部署Heroku出现Application Error排查方案

1. 查看Heroku日志

直接执行命令获取实时错误日志,这是定位问题的核心:

heroku logs --tail

日志会明确显示具体报错原因,比如依赖缺失、数据库连接失败、端口配置错误等。

2. 检查Procfile配置

确保项目根目录存在Procfile文件,内容需正确指向Django的WSGI入口:

web: gunicorn 你的项目名称.wsgi --log-file -

替换你的项目名称为实际Django项目的根模块名。

3. 验证依赖包配置

  • 确认requirements.txt包含生产环境必需依赖,比如gunicorn、dj-database-url、psycopg2-binary(使用PostgreSQL时),执行pip freeze > requirements.txt更新依赖列表后重新部署。
  • 避免依赖包版本冲突,尽量指定稳定版本号。

4. 检查Django核心设置

在settings.py中确认以下配置:

  • DEBUG = False(生产环境必须关闭调试模式)
  • ALLOWED_HOSTS包含Heroku应用域名,示例:ALLOWED_HOSTS = ['你的应用名.herokuapp.com', 'localhost']
  • 数据库配置使用环境变量读取,示例:
    import dj_database_url
    DATABASES = {
        'default': dj_database_url.config(default='postgres://localhost/本地库名')
    }
    

5. 静态文件配置检查

生产环境需正确处理静态资源:

  • 安装whitenoise并添加到INSTALLED_APPS和中间件列表
  • 在settings.py中设置:
    STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
    STATIC_URL = '/static/'
    STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
    

6. 确认Heroku环境变量

检查是否设置了SECRET_KEY等必要环境变量,可通过命令添加:

heroku config:set SECRET_KEY="你的密钥内容"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 04:20:26