nextjs + auth /此站点无法提供安全连接

nafvub8i  于 2023-04-30  发布在  其他
关注(0)|答案(3)|浏览(153)

我的项目中的安全连接有问题。我的设置和代码:

怎么了?
p.s我的代码基于本教程:https://thetechhulk.com/auth0-and-next-js-authentication-complete-guide

jhdbpxl9

jhdbpxl91#

我遇到了类似的问题,问题是我的NEXTAUTH_URL指向https://localhost:3000而不是http://localhost:3000

rpppsulh

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

这为我解决了问题。

lmyy7pcs

lmyy7pcs3#

即使您定义了envvar NEXTAUTH_URL="http://localhost:3000",它仍然可以重定向到https(安全版本而不是不安全版本)。
可能是envvar VERCEL="1”;如果你运行vercel env pull .env来保持你的envars是最新的,那么默认情况下会发生这种情况。
为了解决这个问题,在Vercel中将仅用于开发的VERCEL环境变量设置为空。那么下次你拉到.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}`

相关问题