NextJS部署Vercel报错:访问路径未在构建输出中找到
解决NextJS部署到Vercel出现404的问题
核心排查与修复步骤
- 恢复API路由目录结构:NextJS的API路由必须放在
pages/api目录下,你之前移到public目录是错误的——public仅用于存放静态资源(图片、静态JSON等),无法处理动态API请求。立即将api文件夹移回pages/api,Vercel会自动识别并部署这些API为Serverless函数。 - 检查首页入口文件:确认项目根目录的
pages文件夹下存在index.tsx(或index.js)作为首页入口,Vercel部署NextJS时默认以此作为访问入口,缺失会导致404。 - 检查next.config.js配置:如果你的配置里设置了
output: 'export',这会让NextJS生成纯静态文件,无法支持API路由。若需要保留API功能,删除该配置项,改用Vercel默认的Serverless部署模式;若要静态导出,需将API逻辑替换为静态数据(比如把数据放在public目录下的JSON文件中,前端直接读取)。 - 本地模拟生产环境验证:执行
npm run build完成构建后,运行npm run start启动生产服务器,访问localhost:3000测试是否正常。如果本地生产环境也出现404,优先在本地排查构建产物的问题。 - 重新部署并查看日志:在Vercel控制台触发重新部署,查看构建日志是否有报错(比如依赖安装失败、构建警告),这些可能导致构建输出不完整,进而引发404。
内容的提问来源于stack exchange,提问作者manski
相关产品推荐
相关产品推荐

