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

接入next-i18next后Vercel部署站点全页返回404,本地运行正常如何解决?

问题根因

你遇到的本地运行正常、Vercel部署后404+500的问题,核心是next-i18next的配置或者资源在Vercel的服务端运行环境加载失败,常见原因如下:

  1. next.config.js的i18n配置不完整,缺少必要参数导致Vercel边缘路由无法匹配国际化路径
  2. public/locales翻译资源目录被.gitignore过滤,部署后服务端加载翻译文件失败触发500错误,连带路由匹配失败返回404
  3. 使用了Next.js 13+的App Router,而next-i18next仅支持Pages Router,路由模式不兼容
  4. 构建配置错误,比如配置了output: 'export'静态导出,next-i18next不支持纯静态导出的部署模式
解决方案
  • 补全next.config.js的i18n配置,参考如下:
const { i18n } = require("./next-i18next.config");

module.exports = {
  i18n: {
    locales: ["en", "fr", "nl-NL", "nl-BE", "de", "ja"],
    defaultLocale: "ja",
    localeDetection: false, // 禁用自动区域检测,避免Vercel路由匹配冲突
  },
  // 不要添加output: 'export'配置,会导致国际化功能失效
}
  • 检查项目.gitignore文件,确保没有过滤public/locales目录,该目录下的翻译文件结构必须符合public/locales/[语言编码]/[命名空间].json的规范
  • 确认路由模式:如果使用Next.js 13+ App Router,替换国际化方案为next-intl;如果使用Pages Router,确保next-i18next版本和Next.js版本兼容,推荐next@12.x搭配next-i18next@13.x版本
  • 检查Vercel构建配置,确保构建命令为默认的next build,不要自定义输出目录
  • 若上述操作后问题仍存在,进入Vercel项目部署详情的「Functions」标签查看服务端运行日志,定位具体的资源加载错误

内容的提问来源于stack exchange,提问作者Ryosuke Hujisawa

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 20:06:05