diff --git a/src/lib/supabase/server.ts b/src/lib/supabase/server.ts index cec89f1..22565ce 100644 --- a/src/lib/supabase/server.ts +++ b/src/lib/supabase/server.ts @@ -7,6 +7,22 @@ export async function createClient() { process.env.NEXT_PUBLIC_SUPABASE_URL!, process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, { + global: { + fetch: (url, options) => { + const u = new URL(url.toString()); + if (process.env.NODE_ENV === 'production' && u.hostname === 'supabase.4ventures.es') { + u.protocol = 'http:'; + u.hostname = 'ventures-web-supabase-gm0nnn-supabase-kong'; + u.port = '8000'; + if (!options) options = {}; + if (!options.headers) options.headers = new Headers(); + const headers = new Headers(options.headers); + headers.set('Host', 'supabase.4ventures.es'); + options.headers = headers; + } + return fetch(u.toString(), options); + } + }, cookies: { getAll() { return cookieStore.getAll(); diff --git a/src/middleware.ts b/src/middleware.ts index 9e87f08..a73f4db 100644 --- a/src/middleware.ts +++ b/src/middleware.ts @@ -28,6 +28,22 @@ export async function middleware(req: NextRequest) { process.env.NEXT_PUBLIC_SUPABASE_URL!, process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, { + global: { + fetch: (url, options) => { + const u = new URL(url.toString()); + if (process.env.NODE_ENV === 'production' && u.hostname === 'supabase.4ventures.es') { + u.protocol = 'http:'; + u.hostname = 'ventures-web-supabase-gm0nnn-supabase-kong'; + u.port = '8000'; + if (!options) options = {}; + if (!options.headers) options.headers = new Headers(); + const headers = new Headers(options.headers); + headers.set('Host', 'supabase.4ventures.es'); + options.headers = headers; + } + return fetch(u.toString(), options); + } + }, cookies: { getAll() { return req.cookies.getAll();