Skip to content

fix: 프로덕션 색인 대상 정리#599

Merged
manNomi merged 1 commit into
mainfrom
fix/seo-indexing-production
Jul 6, 2026
Merged

fix: 프로덕션 색인 대상 정리#599
manNomi merged 1 commit into
mainfrom
fix/seo-indexing-production

Conversation

@manNomi

@manNomi manNomi commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

관련 이슈

  • 없음

작업 내용

  • noindex가 적용된 /university/search를 web/university-web sitemap에서 제거했습니다.
  • legacy /university/list/:homeUniversity URL을 rewrite 대신 canonical URL인 /university/:homeUniversity로 permanent redirect 처리했습니다.
  • university multi-zone 문서의 legacy URL 설명을 redirect 기준으로 갱신했습니다.

검증

  • NEXT_PUBLIC_API_SERVER_URL=https://api.solid-connection.com NEXT_PUBLIC_WEB_URL=https://www.solid-connection.com pnpm --filter @solid-connect/university-web run build
  • UNIVERSITY_WEB_DOMAIN=https://www.solid-connection.com NEXT_PUBLIC_API_SERVER_URL=https://api.solid-connection.com NEXT_PUBLIC_WEB_URL=https://www.solid-connection.com pnpm --filter @solid-connect/web run build
  • pnpm --filter @solid-connect/web run lint:check
  • pnpm --filter @solid-connect/web run typecheck:ci
  • pnpm --filter @solid-connect/university-web run lint:check
  • pnpm --filter @solid-connect/university-web run typecheck:ci
  • commit/push hook의 CI parity checks 통과

특이 사항

  • 현재 프로덕션 API 기준 homeUniversityId=1 인하대 목록은 0개, homeUniversityId=2 경희대 목록은 189개입니다. 따라서 기존 인하대 상세 URL의 404는 데이터 기준으로 사라진 URL이며, 이번 PR은 sitemap/noindex 불일치와 legacy URL 중복 신호를 줄이는 정리입니다.

리뷰 요구사항 (선택)

  • /university/list/:homeUniversity/:path* redirect가 legacy 상세/하위 경로에 기대한 canonical URL을 만드는지 확인 부탁드립니다.

@manNomi manNomi requested a review from wibaek as a code owner July 6, 2026 04:57
@vercel

vercel Bot commented Jul 6, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
solid-connect-university-web Ready Ready Preview, Comment Jul 6, 2026 4:59am
solid-connect-web-admin Ready Ready Preview, Comment Jul 6, 2026 4:59am
solid-connection-web Ready Ready Preview, Comment Jul 6, 2026 4:59am

@github-actions github-actions Bot added the web label Jul 6, 2026
@coderabbitai

coderabbitai Bot commented Jul 6, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

이번 PR은 대학교 리스트 관련 레거시 URL 처리 방식을 rewrite에서 redirect로 바꾸고, 두 서비스(apps/web, apps/university-web)의 sitemap.ts에서 /university/search 항목을 제거했습니다. university-web 사이트맵에는 HOME_UNIVERSITY_SLUGS를 기반으로 /university/{slug} URL들을 동적으로 추가했습니다. 배포 문서에서도 이에 맞춰 "rewrite" 표현을 "redirect"로 갱신했습니다.

Estimated code review effort: 2 (Simple) | ~10 minutes

Changes

  1. apps/web/next.config.mjs
    • /university/list/:homeUniversity(inha|kyunghee) 및 하위 경로를 영구 redirect로 전환
    • ㄴ 기존 rewrites 규칙에서 해당 경로 프록시 매핑 제거
  2. apps/university-web/src/app/sitemap.ts
    • /university/search 항목 제거
    • HOME_UNIVERSITY_SLUGS 기반 /university/{slug} URL 동적 추가
  3. apps/web/src/app/sitemap.ts
    • getStaticRoutes()에서 /university/search 항목 제거
  4. docs/university-multizone-deployment.md
    • ㄴ "rewrite" → "redirect" 표현 수정 및 관련 설명 문구 정리

Sequence Diagram(s)

sequenceDiagram
  participant Browser
  participant NextConfig
  Browser->>NextConfig: GET /university/list/inha/path
  NextConfig-->>Browser: 308 permanent redirect to /university/inha/path
Loading

Suggested reviewers: wibaek, enunsnv


🐰 리다이렉트 하나 심어놓고,
사이트맵 목록도 깔끔히 다듬었네.
검색 페이지는 이제 안녕~
대학교 슬러그만 오순도순 남았답니다.
문서 한 줄도 놓치지 않고 고쳤어요! 🥕

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed 제목이 프로덕션 색인 정리, sitemap 제외, legacy URL redirect라는 핵심 변경과 잘 맞습니다.
Description check ✅ Passed 필수 섹션인 관련 이슈, 작업 내용, 특이 사항, 리뷰 요구사항이 모두 포함되어 있고 검증 내용도 충분합니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/seo-indexing-production

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/university-multizone-deployment.md`:
- Line 34: The current wording around /university/list/:homeUniversity only
describes the main redirect, but the actual behavior also includes child-route
forwarding via the legacy-to-canonical redirect rules. Update the documentation
text to explicitly mention that /university/list/:homeUniversity/:path* is
redirected to /university/:homeUniversity/:path*, so the description matches the
behavior defined by the redirect logic and the Next.js config.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 2d5527d9-4d54-4231-8910-d22c129a4440

📥 Commits

Reviewing files that changed from the base of the PR and between 78632fa and b051d8f.

📒 Files selected for processing (4)
  • apps/university-web/src/app/sitemap.ts
  • apps/web/next.config.mjs
  • apps/web/src/app/sitemap.ts
  • docs/university-multizone-deployment.md
💤 Files with no reviewable changes (2)
  • apps/university-web/src/app/sitemap.ts
  • apps/web/src/app/sitemap.ts

- `/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 목록 페이지가 섞이지 않는다.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

printf '\n== Files ==\n'
git ls-files | rg '^(docs/university-multizone-deployment\.md|apps/web/next\.config\.mjs)$'

printf '\n== Doc snippet ==\n'
cat -n docs/university-multizone-deployment.md | sed -n '28,40p'

printf '\n== next.config search ==\n'
rg -n '/university/list|redirect|pathname|source|destination' apps/web/next.config.mjs

printf '\n== next.config snippet ==\n'
cat -n apps/web/next.config.mjs | sed -n '70,95p'

Repository: solid-connection/solid-connect-web

Length of output: 3138


1. 문구를 하위 경로 리다이렉트까지 맞춰주세요.
apps/web/next.config.mjs에는 /university/list/:homeUniversity/:path* -> /university/:homeUniversity/:path* 규칙도 있어서, child route가 그대로 canonical 하위 경로로 이어집니다. 지금의 “child route는 유지하지 않는다”는 실제 동작과 어긋나니, 이 부분까지 반영해 문구를 다듬어 주세요.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/university-multizone-deployment.md` at line 34, The current wording
around /university/list/:homeUniversity only describes the main redirect, but
the actual behavior also includes child-route forwarding via the
legacy-to-canonical redirect rules. Update the documentation text to explicitly
mention that /university/list/:homeUniversity/:path* is redirected to
/university/:homeUniversity/:path*, so the description matches the behavior
defined by the redirect logic and the Next.js config.

@manNomi manNomi merged commit c0a944c into main Jul 6, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant