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

Next JS请求不存在的servcies.json出现404报错及站点无限循环问题

根因说明

Next.js 完成页面首次服务端渲染后,客户端 hydrate 阶段会自动请求对应路由路径的 JSON 数据文件,路径格式为 /_next/data/[构建ID]/[路由路径].json,用于拉取页面预渲染的 props。你当前仅配置了页面路由 /es/servicios 到 /es/services 的重写规则,没有覆盖 Next.js 内部数据请求的路由,因此会请求不存在的 servicios.json 触发 404,后续的异常重试逻辑进而导致站点崩溃、进入无限循环。

修复方案

在 next.config.js 的 rewrites 配置中新增对应 JSON 数据请求的重写规则即可,修改后配置参考如下:

module.exports = {
    async redirects() {
        return [
            {
                source: '/',
                destination: '/es',
                permanent: false,
            }
        ]
    },
    async rewrites() {
      return [
        // 原有页面路由重写规则
        {
            source: '/es/servicios',
            destination: '/es/services',
        },
        // 新增:适配Next.js内部数据请求
        {
            source: '/_next/data/:buildId/es/servicios.json',
            destination: '/_next/data/:buildId/es/services.json',
        },
        // 剩余原有规则
        // ...
      ]
    }
}

优化建议

如果你的项目本身有多语言路由需求,建议直接使用 Next.js 内置的 i18n 路由配置搭配页面别名能力实现自定义路径,不需要手动编写重写规则,可避免漏配各类资源路径的兼容性问题。

报错截图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 22:36:03