From 34304526b191a720679ff9c9152a8eed39ed0381 Mon Sep 17 00:00:00 2001 From: Mauricio Siu Date: Thu, 5 Mar 2026 11:08:31 -0600 Subject: [PATCH] fix: skip redirect middleware for preview deployments to prevent wildcard subdomain inheritance --- packages/server/src/utils/traefik/domain.ts | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/packages/server/src/utils/traefik/domain.ts b/packages/server/src/utils/traefik/domain.ts index 97400b1b9..6a328a1d9 100644 --- a/packages/server/src/utils/traefik/domain.ts +++ b/packages/server/src/utils/traefik/domain.ts @@ -152,16 +152,13 @@ export const createRouterConfig = async ( } if ((entryPoint === "websecure" && https) || !https) { - // redirects - for (const redirect of redirects) { - let middlewareName = `redirect-${appName}-${redirect.uniqueConfigKey}`; - if (domain.domainType === "preview") { - middlewareName = `redirect-${appName.replace( - /^preview-(.+)-[^-]+$/, - "$1", - )}-${redirect.uniqueConfigKey}`; + // redirects - skip for preview deployments as wildcard subdomains + // should not inherit parent redirect rules (e.g., www-redirect) + if (domain.domainType !== "preview") { + for (const redirect of redirects) { + const middlewareName = `redirect-${appName}-${redirect.uniqueConfigKey}`; + routerConfig.middlewares?.push(middlewareName); } - routerConfig.middlewares?.push(middlewareName); } // security