diff options
-rw-r--r-- | .changeset/plenty-carrots-nail.md | 5 | ||||
-rw-r--r-- | packages/astro/src/assets/endpoint/config.ts | 6 | ||||
-rw-r--r-- | packages/astro/test/fixtures/core-image-ssr/src/pages/[...catchall].astro (renamed from packages/astro/test/fixtures/core-image-ssr/src/pages/index.astro) | 0 |
3 files changed, 8 insertions, 3 deletions
diff --git a/.changeset/plenty-carrots-nail.md b/.changeset/plenty-carrots-nail.md new file mode 100644 index 000000000..706366b40 --- /dev/null +++ b/.changeset/plenty-carrots-nail.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fixes a bug where a catchall route would match an image endpoint request diff --git a/packages/astro/src/assets/endpoint/config.ts b/packages/astro/src/assets/endpoint/config.ts index b9309d446..cce5cde5f 100644 --- a/packages/astro/src/assets/endpoint/config.ts +++ b/packages/astro/src/assets/endpoint/config.ts @@ -13,7 +13,7 @@ export function injectImageEndpoint( mode: 'dev' | 'build', cwd?: string, ) { - manifest.routes.push(getImageEndpointData(settings, mode, cwd)); + manifest.routes.unshift(getImageEndpointData(settings, mode, cwd)); } export function ensureImageEndpointRoute( @@ -22,8 +22,8 @@ export function ensureImageEndpointRoute( mode: 'dev' | 'build', cwd?: string, ) { - if (!manifest.routes.some((route) => route.route === '/_image')) { - manifest.routes.push(getImageEndpointData(settings, mode, cwd)); + if (!manifest.routes.some((route) => route.route === settings.config.image.endpoint.route)) { + manifest.routes.unshift(getImageEndpointData(settings, mode, cwd)); } } diff --git a/packages/astro/test/fixtures/core-image-ssr/src/pages/index.astro b/packages/astro/test/fixtures/core-image-ssr/src/pages/[...catchall].astro index d7f9b0551..d7f9b0551 100644 --- a/packages/astro/test/fixtures/core-image-ssr/src/pages/index.astro +++ b/packages/astro/test/fixtures/core-image-ssr/src/pages/[...catchall].astro |