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

部署Django项目到Vercel时出现500内部服务器错误求助

Django部署Vercel问题排查指南

已解决的第一个错误

最初的Runtime.ImportModuleError: No module named 'django'是因为依赖文件名错误(requirement.txt → requirements.txt),修改文件名是正确操作,后续新错误可按以下步骤排查:

1. 验证依赖文件完整性

确保requirements.txt包含Django及所有项目依赖,示例:

Django>=4.2
gunicorn>=21.2.0
# 补充项目所需的其他依赖,如psycopg2-binary、django-cors-headers等

注意依赖名称拼写准确,避免大小写或单词错误。

2. 检查Vercel配置文件vercel.json

确认配置指向正确的Django入口文件,示例配置:

{
  "builds": [
    {
      "src": "你的项目名/wsgi.py",
      "use": "@vercel/python",
      "config": { "maxLambdaSize": "15mb", "runtime": "python3.11" }
    }
  ],
  "routes": [
    {
      "src": "/(.*)",
      "dest": "你的项目名/wsgi.py"
    }
  ]
}

将你的项目名替换为实际包含wsgi.py、settings.py的文件夹名称,同时确保Python runtime版本与本地开发环境一致。

3. 修正Django项目配置(settings.py)

  • 生产环境务必设置DEBUG = False
  • 配置ALLOWED_HOSTS,加入你的Vercel域名(如"xxx.vercel.app"),临时测试可设为["*"](不建议生产环境使用)
  • 静态文件配置:设置STATIC_ROOT = BASE_DIR / "staticfiles",并在部署阶段执行collectstatic命令:
    可在Vercel项目的Build Command中设置为python manage.py collectstatic --noinput,或在项目根目录创建package.json添加脚本:
    {
      "scripts": {
        "build": "python manage.py collectstatic --noinput"
      }
    }
    

4. 配置环境变量

将本地.env文件中的关键变量(如SECRET_KEY、数据库连接URL等)添加到Vercel控制台的Settings → Environment Variables中,确保生产环境能读取到必要配置。

5. 查看完整部署日志

前往Vercel控制台的Deployments模块,找到对应部署的完整日志,定位具体错误信息(如数据库连接失败、静态文件缺失等),针对性解决。

内容的提问来源于stack exchange,提问作者Heidi Renata Halim

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 05:50:25