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

NextJS 13.3部署Vercel后动态路由出现404页面问题求助

Next.js 13.3 App Router动态路由Vercel部署后404问题排查方案
  • 核对动态路由文件结构
    确认app/blog/[post]目录下存在page.js或page.tsx文件——App Router要求每个路由段必须以这个文件作为页面入口,本地开发模式容错性较高,但生产构建会严格校验文件结构,缺失的话直接导致404。

  • 检查静态生成参数配置
    如果你的博客文章是静态生成的,必须在page.js里正确实现generateStaticParams函数,返回所有实际存在的文章slug:

    // app/blog/[post]/page.js
    export async function generateStaticParams() {
      // 替换为你获取文章列表的逻辑,比如从数据库/本地MD文件读取
      const posts = await getBlogPosts();
      return posts.map(post => ({ post: post.slug }));
    }
    

    没配置这个函数的话,Vercel会尝试增量静态生成,但首次访问时可能因未触发生成逻辑返回404。可以去Vercel控制台的「Functions」面板查看SSR函数是否有报错。

  • 验证Vercel部署配置
    确保项目的构建命令是next build,输出目录为.next——这是Next.js的默认配置,如果手动修改过,可能导致路由生成异常。另外查看部署日志,找有没有关于动态路由的警告或错误信息。

  • 清除缓存重新部署
    Vercel的缓存可能残留旧路由配置,重新部署时勾选「Redeploy with cache cleared」,强制重新执行完整构建流程。

内容的提问来源于stack exchange,提问作者Ayoub k

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 23:15:01