静态站点生成 是在构建时生成你的 HTML。然后此 HTML 用于每个请求。静态站点生成可能是 SEO 最佳的渲染策略类型,因为你不仅在页面加载时拥有所有 HTML(因为它已 预渲染),而且还有助于提高页面性能——现在这是 SEO 的另一个排名因素。
与 SSG 类似,服务器端渲染 (SSR) 是预渲染的,这也使其非常适合 SEO。与 SSG 在构建时生成不同,SSR 的 HTML 在请求时生成。这对于页面非常动态的情况非常有用。
如果你有大量的页面,在构建时生成所有页面可能不可行。Next.js 允许你在构建站点后创建或更新静态页面。
增量静态再生 使开发人员和内容编辑能够在每个页面基础上使用静态生成,而无需重建整个站点。使用 ISR,你可以保留静态的优势,同时扩展到数百万个页面。
客户端渲染 允许开发人员使其网站完全在浏览器中使用 JavaScript 渲染。在初始页面加载时,通常会提供一个包含少量或没有内容的 HTML 文件,直到你获取 JavaScript 并浏览器编译所有内容。
如上所述,通常情况下,客户端渲染 不建议用于最佳 SEO。
CSR 非常适合数据密集型仪表板、帐户页面或任何你不需要出现在任何搜索引擎索引中的页面。
对于 SEO 来说,最重要的是页面数据和元数据在页面加载时无需 JavaScript 即可获得。在这种情况下,SSG 或 SSR 将是你的最佳选择。
Next.js 的主要优势之一是每个上述渲染方法都可以在每个页面基础上执行。你可能希望你的博文静态生成,你的客户帐户仪表板客户端渲染,然后你可能有一个新闻提要需要服务器端渲染。