为什么 Next.js 静态导出应用在 Nginx 上路由失效?-灵析社区

楠楠不难难

关于Nextjs静态导出路由刷新后不生效的问题。 背景: 1、初始化一个项目,添加一个路由/test 2、配置静态导出:output: "export" 本地run dev访问:localhost:3000/test是可以保持住页面的。 部署到nginx上访问/test是跳到首页的,这个是什么问题? nginx是有配置404跳转首页的: location / { try_files $uri $uri/ /index.html; } 这个配置vue history模式也是能保持住的。所以现在是啥问题啊?如何才能实现静态化部署后访问路由的问题。

阅读量:242

点赞量:10

问AI
不是很清楚 next.js 的具体做法,但是技术上来讲,如果你生成的静态目录里没有对应的文件,使用 nginx fallback 到 index.html,看起来是符合预期的结果。 我猜测有几个解决问题的思路: 1. next.js 是否有 SPA 的构建选项 2. 缺失的文件指向 404 3. 使用 next.js 服务器提供服务,nginx 代理