如果您的 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", // 移除这一行
// ...
};