我的项目中的安全连接有问题。我的设置和代码:
怎么了?p.s我的代码基于本教程:https://thetechhulk.com/auth0-and-next-js-authentication-complete-guide
jhdbpxl91#
我遇到了类似的问题,问题是我的NEXTAUTH_URL指向https://localhost:3000而不是http://localhost:3000
NEXTAUTH_URL
https://localhost:3000
http://localhost:3000
rpppsulh2#
error image - chrome
url错误:“localhost:3000/API/auth/callbackerror=MUST+match+the+registered+callback+URL+for+this+application”检查您的Github OAuth授权回调URL
Github Authorization Callback URL
检查您的“。env.local”NEXTAUTH_URL
这为我解决了问题。
lmyy7pcs3#
即使您定义了envvar NEXTAUTH_URL="http://localhost:3000",它仍然可以重定向到https(安全版本而不是不安全版本)。可能是envvar VERCEL="1”;如果你运行vercel env pull .env来保持你的envars是最新的,那么默认情况下会发生这种情况。为了解决这个问题,在Vercel中将仅用于开发的VERCEL环境变量设置为空。那么下次你拉到.env时,你应该会看到:
NEXTAUTH_URL="http://localhost:3000"
https
VERCEL="1
vercel env pull .env
.env
VERCEL=""
next-auth的代码可以在这里看到:https://github.com/nextauthjs/next-auth/blob/main/packages/next-auth/src/utils/detect-origin.ts:
if (process.env.VERCEL ?? process.env.AUTH_TRUST_HOST) return `${protocol === "http" ? "http" : "https"}://${forwardedHost}`
3条答案
按热度按时间jhdbpxl91#
我遇到了类似的问题,问题是我的
NEXTAUTH_URL
指向https://localhost:3000
而不是http://localhost:3000
rpppsulh2#
error image - chrome
url错误:“localhost:3000/API/auth/callbackerror=MUST+match+the+registered+callback+URL+for+this+application”
检查您的Github OAuth授权回调URL
Github Authorization Callback URL
检查您的“。env.local”NEXTAUTH_URL
这为我解决了问题。
lmyy7pcs3#
即使您定义了envvar
NEXTAUTH_URL="http://localhost:3000"
,它仍然可以重定向到https
(安全版本而不是不安全版本)。可能是envvar
VERCEL="1
”;如果你运行vercel env pull .env
来保持你的envars是最新的,那么默认情况下会发生这种情况。为了解决这个问题,在Vercel中将仅用于开发的VERCEL环境变量设置为空。那么下次你拉到
.env
时,你应该会看到:next-auth的代码可以在这里看到:https://github.com/nextauthjs/next-auth/blob/main/packages/next-auth/src/utils/detect-origin.ts: