大型电商网站构建后如何在 Next.js 中生成静态页面?

问题描述 投票:0回答:1

我使用带有页面路由的 Next.js 和 Laravel 作为 API 后端开发了一个电子商务网站。该网站目前托管大约 10,000 个产品,我需要静态生成所有产品页面。我正在考虑的一种方法是使用增量静态再生 (ISR)。但是,由于我的自托管 Next.js 设置的性质,每次 Docker 容器重新启动或重新部署应用程序时,所有预构建的页面都会被清除。这会导致用户遇到尚未预先生成的页面。

另一种选择是在构建过程中生成所有页面,但由于需要大量时间,这是不切实际的。

我相信,如果我能够在每次构建后以某种方式在队列中生成页面的静态版本,并在几个小时内逐渐完成所有静态页面,那将是有益的。

另外,我不得不说,每个页面在任何更新后都会通过后端调用 webhook 来重新验证。(按需重新验证)

考虑到自托管设置的限制,是否有推荐的方法或工具来在 Next.js 中实现这种静态生成?

感谢您提供的任何指导或建议。

reactjs laravel next.js static-site-generation
1个回答
0
投票

另一种选择是在构建过程中生成所有页面,但由于需要大量时间,这是不切实际的。

如果您的产品太多,您只预渲染最受欢迎的产品,并将它们存储在 CDN 中。或者如果是假期,比如说圣诞节,你也预渲染相关产品

© www.soinside.com 2019 - 2024. All rights reserved.