🙌
【AWS】TerraformでNext.js 13 SSRアプリをAmplifyにデプロイすると404エラーが発生する(解決済)
以下のスクラップで行った試行錯誤の中で気づいたことのメモです。
やりたいこと
Terraformを使って、Next.js 13で作成したSSRアプリをAWS Amplifyにデプロイしたい。
問題
デプロイは成功するが、アプリのURLにアクセスすると404 Not FoundまたはToo many redirectsが発生する
原因
AWS Amplifyにはplatformというオプションがあり、WEBとWEB_COMPUTEの2種類から選べる。デフォルトはWEBだがSSRアプリをデプロイするときはWEB_COMPUTEを選ぶ必要がある。
AWSの公式リファレンスによればNext.js 12以降はWEB_COMPUTEを使ってね、とのことらしい。
対策
以下のようにaws_amplify_appブロックに1行追加する。
resource "aws_amplify_app" "アプリ名" {
+ platform = "WEB_COMPUTE"
}
宣伝
先日、本を書きました!200円で販売中です(無料部分あり)。
T3 Stack(Next.js, tRPC, Prisma, NextAuth.js, TailindCSS)を使ったSNSのWebアプリケーション開発について、ユーザーとユースケースの定義から作ったWebアプリのデプロイまで、一通り説明しています。よかったら読んでみてください!
Discussion