AWS
迁移

如果您的 Next.js 应用已经部署在其他平台或使用其他开源框架,您可能需要查看以下内容:

从 OpenNext V2 迁移

如果您使用了所有默认配置,应该可以直接部署应用而无需任何更改。

OpenNext V3 将所有构建参数替换为自定义配置文件

以下是旧版构建参数与新版等效项的对应关系:

  • --build-command : 配置文件中的 buildCommand
  • --app-path: 配置文件中的 appPath
  • --build-output-path: 配置文件中的 buildOutputPath
  • --package-json-path: 配置文件中的 packageJsonPath
  • --minify: 每个函数属性中的 minify 选项。现在按函数单独启用
  • --streaming: 这取决于您在单个函数上使用的包装器。要在 AWS Lambda 中启用流式传输,可以在函数的 override 属性中设置 wrapper: 'aws-lambda-streaming'。请注意 AWS Lambda 流式传输仍存在运行时本身的缓冲问题。更多信息请参见此处
  • --dangerously-disable-dynamodb-cache: 配置文件中的 dangerous.disableTagCache
  • --dangerously-disable-incremental-cache: 配置文件中的 dangerous.disableIncrementalCache

Vercel

所有内容应该已经为您设置好了。但有几件事需要注意:

  • 在 open-next 中默认禁用流式传输(目前)。这还处于非常实验性的阶段,更多信息请参见此处
  • 中间件不会对静态文件和图片请求运行(使用 open-next 时)

AWS Amplify

待完善

serverless-nextjs

您需要从 next.config.js 文件中移除一些内容,否则会出现构建错误:

module.exports = {
  // ...
  target: "serverless", // 移除这一行
  // ...
};