如何在 Netlify 上使用 Nuxt.js 的 SSR
How to use SSR with Nuxt.js on Netlify
我的理解是服务器端呈现 (SSR) 是服务器呈现页面然后通过一个流将数据块发送到浏览器的地方,而不是浏览器(客户端)加载 HTML页面,然后对所有 JS/CSS 等提出请求
这是我希望我的网页支持的行为。但是跟随 Netlify 的 their guide,会像往常一样生成静态 HTML 页面,并带有指向所有外部依赖项的链接吗?
那样的话运行npm run generate
不会关闭SSR吗?还是我完全误解了这是如何工作的?
你不能
Netlify 不适用于 SSR,这里的 nuxt 文档仅提及静态渲染。
但是
理论上,您应该将 SSR 与函数一起使用(无服务器),您需要大量配置才能实现它。
Netlify 是一种静态托管服务,这意味着它们本身不支持 SSR。我确实到达了 out to them and they pointed me in the direction of using their functions to run an Express 服务器。
如果你想轻松地使用 SSR,另一种选择是 Heroku。 Nuxt 还可以动态生成路由,然后您可以将这些路由提供给 Netlify。唯一的缺点是,如果您后端的信息发生变化,您必须重新 运行 生成以获取新信息。
编辑 2021 年 1 月 12 日:
最初的答案是帮助任何在无服务器平台上使用 Nuxt 2 和 SSR 的人,但是从 Nuxt 3 Beta 开始,他们已经为 Netlify 实现了 SSR:https://v3.nuxtjs.org/docs/deployment/netlify/
原答案:
您可以使用 Vercel Builder for Nuxt 在 Vercel 上实现它。它使您的项目适应使用无服务器功能并使用它呈现您的项目。 :
https://github.com/nuxt/vercel-builder
摘自自述文件:
工作原理
此 Vercel 构建器采用由 nuxt.config.js(或 .ts)入口点定义的 Nuxt 应用程序,并将其部署为 Vercel 环境中的无服务器函数。
它具有内置缓存 node_modules 和全局 yarn 缓存(即使依赖项发生变化)以及用于快速和小型部署的多阶段构建。
我的理解是服务器端呈现 (SSR) 是服务器呈现页面然后通过一个流将数据块发送到浏览器的地方,而不是浏览器(客户端)加载 HTML页面,然后对所有 JS/CSS 等提出请求
这是我希望我的网页支持的行为。但是跟随 Netlify 的 their guide,会像往常一样生成静态 HTML 页面,并带有指向所有外部依赖项的链接吗?
那样的话运行npm run generate
不会关闭SSR吗?还是我完全误解了这是如何工作的?
你不能 Netlify 不适用于 SSR,这里的 nuxt 文档仅提及静态渲染。
但是
理论上,您应该将 SSR 与函数一起使用(无服务器),您需要大量配置才能实现它。
Netlify 是一种静态托管服务,这意味着它们本身不支持 SSR。我确实到达了 out to them and they pointed me in the direction of using their functions to run an Express 服务器。
如果你想轻松地使用 SSR,另一种选择是 Heroku。 Nuxt 还可以动态生成路由,然后您可以将这些路由提供给 Netlify。唯一的缺点是,如果您后端的信息发生变化,您必须重新 运行 生成以获取新信息。
编辑 2021 年 1 月 12 日:
最初的答案是帮助任何在无服务器平台上使用 Nuxt 2 和 SSR 的人,但是从 Nuxt 3 Beta 开始,他们已经为 Netlify 实现了 SSR:https://v3.nuxtjs.org/docs/deployment/netlify/
原答案:
您可以使用 Vercel Builder for Nuxt 在 Vercel 上实现它。它使您的项目适应使用无服务器功能并使用它呈现您的项目。 : https://github.com/nuxt/vercel-builder
摘自自述文件:
工作原理
此 Vercel 构建器采用由 nuxt.config.js(或 .ts)入口点定义的 Nuxt 应用程序,并将其部署为 Vercel 环境中的无服务器函数。
它具有内置缓存 node_modules 和全局 yarn 缓存(即使依赖项发生变化)以及用于快速和小型部署的多阶段构建。