Env Vars
서버/클라이언트 환경 변수 경계
Next.js 환경 변수는 서버 전용 값과 NEXT_PUBLIC_ 값으로 노출 범위가 갈린다. 비밀 값은 클라이언트에 보내면 안 된다.
환경 변수가 노출되는 범위
visibilityNEXT_PUBLIC_
브라우저 번들에 포함될 수 있어 공개 가능한 값만 둔다.
빌드 시점
클라이언트 공개 변수는 빌드 결과에 고정될 수 있다.
런타임 값
서버에서 읽는 값은 배포 환경의 런타임 설정과 연결된다.
.env→process.env→server only→NEXT_PUBLIC→client bundle
환경 변수 이름은 보안 경계다. 클라이언트에서 필요한 값인지 아닌지 먼저 나눠야 사고를 막을 수 있다.