如何将我的 NextJS 应用程序与 CloudFlare 或 CloudFront CDN 结合使用?

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

我有一个使用 NextJS 13 App Directory 开发的电子商务应用程序,并将其托管在我自己的服务器上。 Nextjs 默认缓存系统工作正常,但每次部署时都会重置缓存。我没有始终更新的内容,但我想通过 CloudFlare 或 CloudFront CDN 提供我的内容。 我的应用程序的某些部分是静态的,某些部分是动态的。例如,我希望用户个人资料和购物车等动态页面直接在服务器上运行,而不需要 CDN,但我希望产品页面、关于我们、联系页面通过 CDN 静态运行。

为了让 CloudFlare 缓存发挥作用,需要设置“Cache-Control”,但您无法在 NextJS 13 App 目录中执行此操作。

简而言之;

直接从服务器获取动态页面,无需CDN, 我想通过 CDN 向我的客户提供静态页面。

感谢您的帮助!

我尝试在 Nextjs 上设置缓存控制,但没有成功。 我已经从 CloudFlare 域面板 -> 缓存规则字段定义了基于页面的缓存控制,但我想设置哪些页面是静态的,哪些页面是动态的,不是通过 CloudFlare,而是通过 NextJS。

caching next.js amazon-cloudfront cloudflare cdn
1个回答
0
投票

您尝试过“动态”选项吗 https://nextjs.org/docs/app/api-reference/file-conventions/route-segment-config#dynamic

所以我想你可以添加

export const dynamic = 'force-static'

到您想要缓存的页面/布局

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