fix: callback 使用 X-Forwarded-Host 构造公共 URL

This commit is contained in:
aiyimickey 2026-07-01 22:15:43 +08:00
parent 4e00279109
commit 5af5ff7c0f
1 changed files with 6 additions and 1 deletions

View File

@ -74,7 +74,12 @@ export async function GET(request: NextRequest) {
payload: { username: userinfo.preferred_username, displayName: userinfo.name, role: user.role }, payload: { username: userinfo.preferred_username, displayName: userinfo.name, role: user.role },
}) })
const response = NextResponse.redirect(new URL('/', request.url)) // 使用 nginx 转发的 Host 头构造正确的公共 URL
const proto = request.headers.get('x-forwarded-proto') || 'http'
const host = request.headers.get('x-forwarded-host') || request.headers.get('host') || request.nextUrl.host
const publicUrl = `${proto}://${host}`
const response = NextResponse.redirect(new URL('/', publicUrl))
// 签发 tlyq_session cookie // 签发 tlyq_session cookie
response.cookies.set('tlyq_session', token, { response.cookies.set('tlyq_session', token, {