首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Next.js自动静态站点优化和仍然导出的Netlify?

如何使用Next.js自动静态站点优化和仍然导出的Netlify?
EN

Stack Overflow用户
提问于 2020-04-23 04:06:03
回答 1查看 2.2K关注 0票数 5

我一直在努力实现来自下9.3的一些更新。我一直在从getInitialProps转到getServerSideProps,并注意到我的exportPathMap对这些页面变得动态感到不快。运行next一切都很好,但是当我去运行next build && next export时,我遇到了一些问题。

静态html导出的docs中,它声明If your pages don't have getInitialProps you may not need next export at all; next build is already enough thanks to Automatic Static Optimization.,我能够在运行next build && next start时愉快地使用新的getServerSideProps调用。我需要采取哪些步骤才能与next export一起工作,这样我就可以通过Netlify进行部署。下面是我尝试运行next export时所遇到的错误的一个例子

代码语言:javascript
复制
Error occurred prerendering page "/videos/[videos_title]". Read more: https://err.sh/next.js/prerender-error:
Error: Error for page /videos/[videos_title]: pages with `getServerSideProps` can not be exported. See more info here: https://err.sh/next.js/gssp-export
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-17 04:29:10

使用SSR构建的应用程序不能部署在Netlify或任何其他静态托管站点(支持NextJS SSR部署的Vercel除外)

当您使用SSR (使用getServerSideProps)时,使用命令next export是毫无意义的,因为它将尝试创建与next export完全相反的静态内容。

  • 一种部署方法是通过创建具有适当路由配置的自定义server.js文件,在虚拟服务器(如server.js)中运行它。
  • 另一种简单快捷的方法是使用Vercel (以前的Zeit)来部署SSR实现的应用程序,使它们能够明智地处理它。

Vercel在部署SSR应用程序方面文档很差。幸运的是,我从支持小组获得了以下信息,并要求他们更新文档,详细介绍Vercel中的SSR部署。

在Vercel部署时,

  • next buildnpm run build的形式提供构建命令
  • 将输出目录保留为

注意:使用自定义server.js的应用程序在Vercel中不能正常工作,在这种情况下,可以使用虚拟服务器(如EC2)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61379200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档