웹 개발
데이터베이스 연결 문제, 환경별로 달라지는 이유
웹 개발에서 로컬과 배포 환경의 연결 문제를 구분하고 빠르게 해결하는 방법을 정리했습니다.
웹 개발을 하다 보면 연결 문제는 가장 답답하다. 로컬에서는 잘 되는데 배포하면 에러가 난다. 이렇게 되면 뭘 먼저 봐야 할지 막힌다.
핵심은 연결 문제를 크게 보지 않는 것이다. 사용자가 영향받는 부분과 로그 차이를 먼저 분리해서 봐야 한다.
사용자 입장에서 뭐가 안 되는지 확인하기
연결 문제가 반복된다면 확인 순서를 고정해두자. 감으로 접근하면 같은 실수를 반복한다.
먼저 볼 값들:
- 사용자가 마주치는 에러 화면
- 정상일 때의 기능이 어떻게 동작하는지
- 명령 실행 결과와 응답 상태 코드
환경 차이를 정확히 파악하기
연결 문제는 보통 환경 차이에서 나온다. 로컬 머신에서는 localhost가 잘 되지만 원격 서버에서는 호스트명이나 포트가 달라야 한다.
npm run build
# 배포된 서버에서 실제 요청이 어디로 가는지 curl로 확인해본다
환경 변수 설정을 확인하는 게 가장 빠르다. .env 파일이 제대로 로드되고 있는지, 배포 환경에서는 어떻게 설정되어 있는지 체크리스트를 만들어두자.
실패하는 상황을 정확히 재현하기
연결 문제를 해결하려면 일관되게 재현할 수 있어야 한다.
- 먼저 같은 조건에서 에러가 다시 나는지 확인한다.
- 로그나 응답에서 뭐가 다른지 구체적으로 메모한다.
- 여러 방법으로 마지막 확인을 한다: 공개 URL, 빌드 결과, 실제 데이터베이스 요청.
정리하며
연결 문제는 보통 설정 실수다. 한 번 확인 순서를 정해두면 다음부터는 훨씬 빠르게 해결된다. 문제를 해결할 때마다 기록을 남겨두면 패턴을 찾을 수 있다.