diff --git a/app/api/admin/auth/login/route.ts b/app/api/admin/auth/login/route.ts index fb9c0b1b..e9293e80 100644 --- a/app/api/admin/auth/login/route.ts +++ b/app/api/admin/auth/login/route.ts @@ -43,6 +43,21 @@ export async function POST(request: Request) { async function getPublicOrigin(request: Request) { const headerStore = await headers() + const origin = headerStore.get("origin") + if (origin) { + return origin + } + + const referer = headerStore.get("referer") + if (referer) { + return new URL(referer).origin + } + + const siteUrl = process.env.NEXT_PUBLIC_SITE_URL + if (siteUrl) { + return siteUrl + } + const forwardedProto = headerStore.get("x-forwarded-proto") const forwardedHost = headerStore.get("x-forwarded-host") const host = forwardedHost || headerStore.get("host") diff --git a/app/api/admin/auth/logout/route.ts b/app/api/admin/auth/logout/route.ts index ba8a9cea..8dc20f4e 100644 --- a/app/api/admin/auth/logout/route.ts +++ b/app/api/admin/auth/logout/route.ts @@ -26,6 +26,21 @@ export async function POST(request: Request) { async function getPublicOrigin(request: Request) { const headerStore = await headers() + const origin = headerStore.get("origin") + if (origin) { + return origin + } + + const referer = headerStore.get("referer") + if (referer) { + return new URL(referer).origin + } + + const siteUrl = process.env.NEXT_PUBLIC_SITE_URL + if (siteUrl) { + return siteUrl + } + const forwardedProto = headerStore.get("x-forwarded-proto") const forwardedHost = headerStore.get("x-forwarded-host") const host = forwardedHost || headerStore.get("host")