NextJS 不会为静态导出中的子文件夹创建 index.html
NextJS doesn't create index.html for subfolders in static export
我使用 NextJS 制作了一个完全静态的网站,export
对其进行编辑,然后使用静态网站托管将其托管在 S3 上。我可以四处点击并成功查看所有页面,包括 example.com/blog
。但是,如果我在浏览器中单击刷新,或直接输入 example.com/blog
,则会出现 404 Not Found 错误。
查看导出的文件时,我看到 /blog/ 没有 index.html 文件,尽管(在我看来)应该有,因为在原始源文件中我有一个 /blog/index.ts
文件,在开发模式下我可以刷新 localhost/blog
或直接输入它,它按预期工作。
总而言之,我相信 NextJS 应该创建一个 /blog/index.html
文件,但它没有。有什么办法可以强制执行此操作吗?难道我做错了什么?谢谢!
要在导出到静态 HTML 时生成 index.html
文件,请在 next.config.js
:
中启用 trailingSlash
设置
module.exports = {
trailingSlash: true,
}
./out/blog.html
在导出后现在应该变成 ./out/blog/index.html
。
我使用 NextJS 制作了一个完全静态的网站,export
对其进行编辑,然后使用静态网站托管将其托管在 S3 上。我可以四处点击并成功查看所有页面,包括 example.com/blog
。但是,如果我在浏览器中单击刷新,或直接输入 example.com/blog
,则会出现 404 Not Found 错误。
查看导出的文件时,我看到 /blog/ 没有 index.html 文件,尽管(在我看来)应该有,因为在原始源文件中我有一个 /blog/index.ts
文件,在开发模式下我可以刷新 localhost/blog
或直接输入它,它按预期工作。
总而言之,我相信 NextJS 应该创建一个 /blog/index.html
文件,但它没有。有什么办法可以强制执行此操作吗?难道我做错了什么?谢谢!
要在导出到静态 HTML 时生成 index.html
文件,请在 next.config.js
:
trailingSlash
设置
module.exports = {
trailingSlash: true,
}
./out/blog.html
在导出后现在应该变成 ./out/blog/index.html
。