배포는 성공했는데 화면이 안 뜰 때 환경변수부터 보기
Vercel 배포는 Ready였지만 관리자와 API가 기대처럼 동작하지 않았을 때, 환경변수를 하나씩 맞춰 해결한 기록입니다.
Code notes
코드에서 확인한 구현 포인트
배포 기준 2026.05.01
관련 파일
apps/web/app/api/*apps/web/lib/supabase/*Vercel Environment Variables구현 메모
배포 Ready 이후에도 API가 데이터에 접근하려면 Production 환경변수가 맞아야 한다.
공개 가능한 값과 서버 전용 값을 분리해 Vercel 프로젝트 설정에 입력했다.
환경변수 변경 후에는 새 배포가 필요할 수 있어 커밋 푸시로 최신 설정을 반영했다.
Ready가 곧 정상 동작은 아니었다
Vercel에서 배포 상태가 Ready로 바뀌면 모든 게 끝난 것처럼 보인다. 하지만 실제 서비스는 빌드만 통과하면 되는 것이 아니다. 서버 API가 데이터베이스와 통신하고, 클라이언트가 올바른 공개 설정값을 읽어야 한다.
Tangly에서는 배포 후 관리자 경로는 열리는데 일부 데이터가 비거나, API 흐름이 기대대로 이어지지 않는 상황이 있었다. 이때 가장 먼저 봐야 했던 것이 Vercel의 Environment Variables였다.
어떤 식으로 점검했나
로컬 .env에 있는 값을 그대로 공개 저장소에 올리는 것은 위험하다. 그래서 필요한 키 이름만 확인하고, 값은 Vercel 프로젝트 설정에서 Production과 Preview에 맞게 직접 입력했다.
특히 Supabase URL, 공개 anon 키, 서버에서만 써야 하는 키, 앱이 바라보는 서버 주소처럼 역할이 다른 값들을 섞지 않는 것이 중요했다. 공개 가능한 값과 서버 전용 값은 이름과 사용 위치를 기준으로 다시 확인했다.
환경변수는 저장한 뒤 기존 배포에 자동으로 반영되지 않을 수 있다. 설정을 저장하고 새 배포를 만들거나 GitHub에 작은 커밋을 푸시해서 최신 설정으로 다시 빌드되게 했다.
기록할 때 조심한 것
이런 글은 문제 해결 과정은 남기되, 실제 키 이름의 민감한 조합이나 값은 남기지 않는 것이 좋다. 나중에 다시 볼 때 필요한 것은 값 자체가 아니라 어떤 종류의 값이 어느 환경에 필요했는지다.
환경변수 문제는 한 번 해결해도 다음 배포나 Preview 환경에서 다시 만날 수 있다. 그래서 로컬, Preview, Production의 차이를 계속 의식하기로 했다.
Keep reading
다른 글 이어서 보기
Debugging
2026.05.05
6 min read
GitHub 푸시 후 Vercel 배포가 Blocked가 되었을 때
커밋은 올라갔지만 Vercel 자동 배포가 막혔던 상황에서, GitHub 작성자와 프로젝트 권한을 확인해 해결한 기록입니다.
Debugging
2026.05.04
7 min read
서브도메인은 연결됐는데 /admin이 404였던 이유
blog, ad, nacho 서브도메인을 나누는 과정에서 Vercel 404와 앱 내부 라우팅 문제를 구분해 해결한 기록입니다.
Debugging
2026.05.03
8 min read
도메인은 연결됐는데 접속이 거부될 때
tangly.kr과 www 도메인을 Vercel에 붙이며 DNS, 네임서버, SSL 발급 대기 상태를 구분해 해결한 기록입니다.