From 0810cd85394a5ba6e5b5c0d18b7fa5110b598d2e Mon Sep 17 00:00:00 2001 From: amintong Date: Sun, 10 Aug 2025 09:35:07 +0800 Subject: [PATCH 1/3] fix(proxy-backend): correct rewrite rule to avoid extra subpath in proxy path\n\nUse getBaseUrl instead of getExternalBaseUrl for pathPrefix, ensuring rewrite rule is /api/proxy/... and not /subpach/api/proxy/...\n\nAdded changeset for patch release. Signed-off-by: amintong --- .changeset/late-squids-feel.md | 5 +++++ plugins/proxy-backend/src/service/router.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/late-squids-feel.md diff --git a/.changeset/late-squids-feel.md b/.changeset/late-squids-feel.md new file mode 100644 index 0000000000..b1e0c37b45 --- /dev/null +++ b/.changeset/late-squids-feel.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-proxy-backend': minor +--- + +correct rewrite rule to avoid extra subpath in proxy path diff --git a/plugins/proxy-backend/src/service/router.ts b/plugins/proxy-backend/src/service/router.ts index e58bccd7af..d9829c477b 100644 --- a/plugins/proxy-backend/src/service/router.ts +++ b/plugins/proxy-backend/src/service/router.ts @@ -292,8 +292,8 @@ export async function createRouter( logger: options.logger, }; - const externalUrl = await options.discovery.getExternalBaseUrl('proxy'); - const { pathname: pathPrefix } = new URL(externalUrl); + const baseUrl = await options.discovery.getBaseUrl('proxy'); + const { pathname: pathPrefix } = new URL(baseUrl); const proxyConfig: ProxyConfig = { ...(options.additionalEndpoints ?? {}), From 1c9d93a2b56aeebbe3d71a32a93fd92f8dcdabbe Mon Sep 17 00:00:00 2001 From: amintong Date: Mon, 11 Aug 2025 10:35:15 +0800 Subject: [PATCH 2/3] pathPrefix use hardcode Signed-off-by: amintong --- plugins/proxy-backend/src/service/router.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/plugins/proxy-backend/src/service/router.ts b/plugins/proxy-backend/src/service/router.ts index d9829c477b..3fb33eb572 100644 --- a/plugins/proxy-backend/src/service/router.ts +++ b/plugins/proxy-backend/src/service/router.ts @@ -292,8 +292,7 @@ export async function createRouter( logger: options.logger, }; - const baseUrl = await options.discovery.getBaseUrl('proxy'); - const { pathname: pathPrefix } = new URL(baseUrl); + const pathPrefix = '/api/proxy'; const proxyConfig: ProxyConfig = { ...(options.additionalEndpoints ?? {}), From 94d5b68321a160486c1cc047cf5e33038ba47b3b Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 11 Aug 2025 09:07:09 +0200 Subject: [PATCH 3/3] Update .changeset/late-squids-feel.md Signed-off-by: Patrik Oldsberg --- .changeset/late-squids-feel.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/late-squids-feel.md b/.changeset/late-squids-feel.md index b1e0c37b45..f527152c8b 100644 --- a/.changeset/late-squids-feel.md +++ b/.changeset/late-squids-feel.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-proxy-backend': minor +'@backstage/plugin-proxy-backend': patch --- correct rewrite rule to avoid extra subpath in proxy path