From b051d8f0070dd7e7decf3d0e7c07dd3c0f02cf7a Mon Sep 17 00:00:00 2001 From: manNomi Date: Mon, 6 Jul 2026 13:55:43 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=ED=94=84=EB=A1=9C=EB=8D=95=EC=85=98=20?= =?UTF-8?q?=EC=83=89=EC=9D=B8=20=EB=8C=80=EC=83=81=20=EC=A0=95=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/university-web/src/app/sitemap.ts | 6 ------ apps/web/next.config.mjs | 18 ++++++++++++++---- apps/web/src/app/sitemap.ts | 1 - docs/university-multizone-deployment.md | 2 +- 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/apps/university-web/src/app/sitemap.ts b/apps/university-web/src/app/sitemap.ts index b3f1231b..17497b98 100644 --- a/apps/university-web/src/app/sitemap.ts +++ b/apps/university-web/src/app/sitemap.ts @@ -22,12 +22,6 @@ export default function sitemap(): MetadataRoute.Sitemap { changeFrequency: "weekly", priority: 0.8, }, - { - url: `${siteUrl}/university/search`, - lastModified, - changeFrequency: "weekly", - priority: 0.6, - }, ...HOME_UNIVERSITY_SLUGS.map((slug) => ({ url: `${siteUrl}/university/${slug}`, lastModified, diff --git a/apps/web/next.config.mjs b/apps/web/next.config.mjs index 87c2a0d0..16014cec 100644 --- a/apps/web/next.config.mjs +++ b/apps/web/next.config.mjs @@ -70,6 +70,20 @@ const nextConfig = { typescript: { ignoreBuildErrors: true, }, + async redirects() { + return [ + { + source: `/university/list/:homeUniversity${universitySlugPattern}`, + destination: "/university/:homeUniversity", + permanent: true, + }, + { + source: `/university/list/:homeUniversity${universitySlugPattern}/:path*`, + destination: "/university/:homeUniversity/:path*", + permanent: true, + }, + ]; + }, async rewrites() { if (!universityWebDomain) { return []; @@ -96,10 +110,6 @@ const nextConfig = { source: "/university/search", destination: `${universityWebDomain}/university/search`, }, - { - source: `/university/list/:homeUniversity${universitySlugPattern}`, - destination: `${universityWebDomain}/university/:homeUniversity`, - }, { source: `/university/:homeUniversity${universitySlugPattern}`, destination: `${universityWebDomain}/university/:homeUniversity`, diff --git a/apps/web/src/app/sitemap.ts b/apps/web/src/app/sitemap.ts index a710e25a..c62f23ea 100644 --- a/apps/web/src/app/sitemap.ts +++ b/apps/web/src/app/sitemap.ts @@ -22,7 +22,6 @@ const toSitemapEntry = ( const getStaticRoutes = (): MetadataRoute.Sitemap => [ toSitemapEntry("/", "daily", 1), toSitemapEntry("/university", "weekly", 0.85), - toSitemapEntry("/university/search", "weekly", 0.6), toSitemapEntry("/terms", "yearly", 0.35), ...HOME_UNIVERSITY_LIST.map((university) => toSitemapEntry(`/university/${university.slug}`, "weekly", 0.8)), ]; diff --git a/docs/university-multizone-deployment.md b/docs/university-multizone-deployment.md index 1ce5701e..56dffe5b 100644 --- a/docs/university-multizone-deployment.md +++ b/docs/university-multizone-deployment.md @@ -31,7 +31,7 @@ - `/university/:homeUniversity/:id` - `/university-static/*` -`/university/list/:homeUniversity`는 legacy URL로만 취급한다. child route는 유지하지 않고, main rewrite에서 `/university/:homeUniversity` SSG 페이지로 보낸다. 이렇게 하면 오래된 외부 링크는 살리면서 SSG catalog 안에 client-fetch 목록 페이지가 섞이지 않는다. +`/university/list/:homeUniversity`는 legacy URL로만 취급한다. child route는 유지하지 않고, main redirect에서 `/university/:homeUniversity` SSG 페이지로 보낸다. 이렇게 하면 오래된 외부 링크는 canonical URL로 정리하면서 SSG catalog 안에 client-fetch 목록 페이지가 섞이지 않는다. ## Vercel 프로젝트 설정