使用Next.js支持传统url

使用Next.js支持传统url,next.js,Next.js,我正在编写一个新的Next.js应用程序,其中必须支持旧URL(我无法301重定向) 我需要支持像这样的URL 我目前有这个文件夹结构 页面文件夹->栏文件夹->[slug].js 我要走这条路吗 我需要像这样创建一个foo文件夹,然后让下一次转换来完成这项工作,还是其他方式 页面文件夹->foo文件夹->酒吧文件夹->[slug].js 您可以在next.config.js中使用,将传统URL结构指向next.js页面路径。重写仅在服务器端可用,不影响客户端路由 //next.config.j

我正在编写一个新的Next.js应用程序,其中必须支持旧URL(我无法301重定向)

我需要支持像这样的URL

我目前有这个文件夹结构

页面文件夹->栏文件夹->[slug].js

我要走这条路吗

我需要像这样创建一个foo文件夹,然后让下一次转换来完成这项工作,还是其他方式

页面文件夹->foo文件夹->酒吧文件夹->[slug].js

您可以在
next.config.js
中使用,将传统URL结构指向next.js页面路径。重写仅在服务器端可用,不影响客户端路由

//next.config.js
module.exports={
异步重写(){
返回[
{
来源:“/foo/bar/:slug”,
目标:'/bar/:slug'
}
];
}
}

你的意思是你必须遵循这个URL结构,页面本身将存在于你的Next.js应用程序中,而不是外部吗?是的-设置有点难以解释,它本质上是一个Nextjs页面,似乎是另一个应用程序的一部分。这可能是一个显而易见的点-但这只适用于服务器端路由。这是正确的<代码>重写仅在服务器上可用,不会影响客户端路由。我将更新答案,以明确这一点。