catch-all은 계층 URL을 한 화면 책임으로 묶을 때만 쓴다
URL이 길다고 무조건 catch-all을 쓰는 것이 아니라, 같은 데이터 모델과 같은 화면 책임을 공유할 때 선택한다.
| 시나리오 | URL 예시 | 추천 패턴 | 주의할 점 |
|---|---|---|---|
| 문서 사이트 | /docs/api/v1/auth | [[...slug]] | 홈과 상세 분기 |
| 블로그 카테고리 | /articles/web/nextjs | [...slug] | 카테고리와 글 slug 규칙 |
| 파일 기반 CMS | /docs/guides/install/windows | [...slug] | 파일 경로 탐색 보안 |
| 커스텀 404 대체 | /anything/unknown | [...slug] | 너무 넓게 잡아 실제 404를 숨기지 않기 |
| 상품 상세 | /products/123 | [id] | 한 조각이면 catch-all 과함 |