记录Auth.js的callbackUrl问题解决经历
最近在给Next.js项目配置 Auth.js时,遇到一个很头疼的问题。在本地测试和在Vercel上部署时,均可正常运行,但是同样的代码部署到 Google Cloud 云服务器上时,就会有问题。具体问题是,当使用Github登录时,callback会callback到http://0.0.0.0:3000/api/auth/signin?error=OAuthCallbackError
一开始猜测是Nginx配置问题,检查之后确认无误。
后面花了很长时间,才意识到,Auth.js可以开启debug:true。开启后,发现我向github发送的请求内容中,
1 | "signinUrl": "http://0.0.0.0:3000/api/auth/signin/github", |
虽然没有发现具体原因。但是想起auth.js文档中,明确写了v5版本,不需要规定AUTH_URL
在环境变量中,设置
1 | AUTH_URL=【自己的域名】 |
重启项目,发现运行正常,问题解决。