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

Localhost路由正常,部署至Vercel后路由失效问题求助

解决Vercel部署后路由失效问题

先明确你的项目类型,不同场景对应不同修复方案:

1. 前端SPA(React/Vue/Angular等)场景

你当前的vercel.json配置针对的是Node后端服务,不匹配SPA项目,建议修改为:

{
  "version": 2,
  "builds": [
    {
      "src": "package.json",
      "use": "@vercel/static-build",
      "config": { "distDir": "dist" } // 替换为你的项目构建输出目录,比如React的build、Vue的dist
    }
  ],
  "routes": [
    {
      "src": "/(.*)",
      "dest": "/index.html"
    }
  ]
}
  • 注意:distDir必须和你项目实际的构建产物目录一致,否则Vercel找不到静态文件。

2. Node.js后端服务(如Express)场景

如果是后端服务,当前路由配置会把所有请求转发到根路径,但你的index.js可能没处理全路由逻辑:

  • 确保后端代码里配置了兜底路由,比如Express项目:
// index.js 示例
const express = require('express');
const path = require('path');
const app = express();

// 你的业务路由
app.get('/api/user', (req, res) => {
  res.json({ name: 'test' });
});

// 兜底处理所有未匹配的路由
app.get('*', (req, res) => {
  // 若为前后端同构,返回前端页面;若纯后端,返回对应响应
  res.sendFile(path.join(__dirname, 'build', 'index.html'));
});

module.exports = app;

3. 通用排查点

  • 重新部署时勾选Vercel控制台的「清除缓存」选项,避免旧配置干扰。
  • 检查URL路径大小写:Vercel对路径大小写敏感,本地环境通常不区分,确保路由链接和实际路径一致。
  • 确认构建产物完整:在Vercel部署记录里查看构建日志,确保所有路由相关资源都已上传。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 03:25:03