Dual-Audience Admin Prefix — 청중별 엔드포인트 경계 + 게이팅 주입점
"같은 가게인데, 손님용 문과 직원용 문을 따로 내는 것" 이에요.
로그인·목록 보기 같은 똑같은 기능을, 일반 사용자와 운영자가 각각 쓰는데,
문(입구 주소)을 따로 만들어요. 운영자용 문 주소 앞에는 /admin 이라는 팻말을 붙여요.
비유: 카페의 두 개의 문 ☕
카페 하나에 문이 두 개 있다고 생각해봐요. 하지만 주방은 하나예요.
- 손님용 문 (
/auth/...) — 보통 손님이 들어와서 커피를 주문해요. - 직원용 문 (
/admin/auth/...) — 직원이 들어와요. 주소 앞에/admin팻말이 붙어 있죠.
두 문으로 들어오는 사람이 시키는 일(커피 만들기 = 로그인 처리)은 똑같아요. 그래서 문은 둘이지만 주방(진짜 일하는 코드)은 하나만 두고 같이 써요. 문을 두 개로 나눈 이유는, 나중에 "직원 문에는 사원증 검사" 를 붙이기 쉽게 하려는 거예요.
왜 지금 문부터 나눠둘까 (흐름)
재밌는 점은, 지금은 사원증 검사기가 아직 없어요. 직원 문으로도 그냥 들어와져요. 그런데도 문을 미리 두 개로 갈라두는 이유가 있어요.
문이 이미 나뉘어 있으면, 나중에 검사기를 달 때 직원 문 한 곳에만 딱 붙이면 되거든요. 반대로 문이 하나로 합쳐져 있으면, 나중에 손님과 직원을 갈라내느라 훨씬 고생해요.
즉 "경계선을 먼저 그어두고, 검사는 나중에" 하는 거예요. 자리를 미리 비워두는 거죠.
문은 여러 겹으로 나뉘어요 (트레이드오프)
문을 나누는 건 주소(/admin)만이 아니에요. 청중이 다르면 이런 것도 같이 갈라요.
- 화면(프론트 앱) — 손님 화면과 운영자 화면(백오피스)은 아예 다른 사이트.
- 로그인 뒤 돌아올 주소 — 구글 로그인 후 손님은 손님 화면으로, 운영자는 운영자 화면으로.
문을 이렇게 여러 겹으로 나누면 관리할 게 조금 늘어나요. 대신 손님과 운영자가
절대 서로 섞이지 않아서 훨씬 안전하고 깔끔해요. 부트스트랩(초기) 단계에선
가장 가벼운 방법인 주소 앞 /admin 팻말부터 붙이는 걸로 시작해요.
핵심만 다시
- 같은 기능(로그인 등)을 손님용·운영자용 두 개의 문으로 나눠요.
- 운영자 문 주소 앞엔
/admin팻말, 하지만 주방(코드)은 하나를 같이 써요. - 경계선 먼저, 검사는 나중 — 검사기 자리를 비워두면 나중에 한 곳에만 딱 붙여요.
- 문은 화면·로그인 복귀 주소까지 여러 겹으로 갈려서 손님과 운영자가 안 섞여요.
더 자세한 진짜 코드·설계는 옆의 개요 / Variants / Apply Recipe 탭에서 볼 수 있어요.