💬

NextAuth v4を利用したアプリをVercelにデプロイする時の注意点

1 min read

デプロイ自体は通常通りできたが、認証周りで2点躓いたので簡潔に備忘録として残します。
理解が違う点がありましたらご指摘いただけますと幸いです。

1 [...nextauth].jsにsecretを記述する必要がある

secret: process.env.NEXT_PUBLIC_SECRET,

上記を必ず記述しないと、server errorが出続ける.NextなのでNEXT_PUBLICも忘れずに付ける。
中身は、

openssl rand -based64 32

でランダムに生成し、.envに記述する。

2 環境変数に注意

通常、NEXTAUTH_URL=URLという形で記述するが、Vercelにデプロイする場合、

NEXT_PUBLIC_VERCEL_URL=***.vercel.app

という形で書かないと正常にAuth処理できない。何か遠回りな感じがすごい。

Vercelにも.envに記述しているenvironmentを書かないと当然ながら意味がない。

考察

https://qiita.com/masahiro_fukatsu/items/2bdce21d9e24b43728af

記事やドキュメントが少ない中、こちらを参考にさせていただきました。

試しにNextAuthを利用してVercelにアプリをデプロイしてみたのですが、とりあえずはFirebase Authenticationの各種認証で良い気がしました。

また、上記リンクの方も書いていますが、NextAuthとVercelは相性があまり良くない気がしました。

Discussion

ログインするとコメントできます