feat(dev): VITE_ENABLE_DEV_ROUTES 로 비-로컬호스트에서도 /dev/*·/test 허용

스테이징/IP 서버 빌드에서 디버그 라우트를 켤 수 있게 env flag 추가.
운영 빌드는 false 로 유지.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
main
Mina Choi 2026-05-20 11:59:32 +09:00
parent 7fb1831c91
commit e04e8af798
2 changed files with 14 additions and 2 deletions

View File

@ -5,3 +5,7 @@ VITE_API_BASE_URL=http://localhost:8001
# 백엔드 API 키 — 모든 요청에 x-api-key 헤더로 전송 # 백엔드 API 키 — 모든 요청에 x-api-key 헤더로 전송
VITE_API_KEY= VITE_API_KEY=
# 'true' 로 설정 시 비-로컬호스트 환경(스테이징/IP 서버 등)에서도 /dev/* 와 /test 라우트 허용
# 운영(production) 에는 절대 'true' 로 두지 말 것
VITE_ENABLE_DEV_ROUTES=false

View File

@ -1,7 +1,11 @@
/** /**
* DevOnly `/dev/*` . * DevOnly `/dev/*` .
* *
* `window.location.hostname` . * :
* - `VITE_ENABLE_DEV_ROUTES=true` ,
* - `window.location.hostname` .
* .
*
* "운영 도메인에서 실수로 노출되는 것 방지" . * "운영 도메인에서 실수로 노출되는 것 방지" .
* /CDN . * /CDN .
*/ */
@ -20,8 +24,12 @@ function isLocalHost(): boolean {
return LOCAL_HOSTNAMES.has(window.location.hostname); return LOCAL_HOSTNAMES.has(window.location.hostname);
} }
function isDevRoutesEnabled(): boolean {
return import.meta.env.VITE_ENABLE_DEV_ROUTES === 'true';
}
export default function DevOnly() { export default function DevOnly() {
if (!isLocalHost()) { if (!isDevRoutesEnabled() && !isLocalHost()) {
return <Navigate to="/" replace />; return <Navigate to="/" replace />;
} }
return <Outlet />; return <Outlet />;