部署Django应用至Vercel失败求助:Runtime版本无效错误
解决Vercel部署Django时的Runtime版本错误问题
错误原因
触发Error: Function Runtimes must have a valid version的核心问题是:@vercel/static-build未指定具体版本号,且vercel-python的包名格式不符合Vercel官方要求——所有函数运行时必须携带明确的版本标识,且官方Python运行时的包名前缀应为@vercel/。
修正后的vercel.json配置
{ "version": 2, "functions": { "core/wsgi.py": { "runtime": "@vercel/python@3.10.12" }, "build_files.sh": { "runtime": "@vercel/static-build@1.0.0" } }, "routes": [ { "src": "/static/(.*)", "dest": "/static/$1" }, { "src": "/(.*)", "dest": "core/wsgi.py" } ] }
关键调整说明
- 将
vercel-python@9.8.1改为@vercel/python@3.10.12:Vercel官方Python运行时的包名为@vercel/python,版本号对应实际使用的Python版本,可根据项目需求替换为3.9、3.11等兼容版本 - 为
@vercel/static-build添加明确版本号:示例中使用@1.0.0,也可选择Vercel支持的其他稳定版本
额外部署注意事项
- 确保
build_files.sh脚本包含必要的构建步骤,示例内容如下:#!/bin/bash pip install -r requirements.txt python manage.py collectstatic --noinput - 项目根目录需存在
requirements.txt,明确列出Django及其他依赖包的版本信息
内容的提问来源于stack exchange,提问作者Matheus Marques
相关产品推荐
相关产品推荐

