CORS 트러블슈팅 가이드
브라우저 CORS 에러를 빠르게 해결하기 위한 원인/체크리스트
CORS 문제는 “서버가 실패”한 게 아니라 브라우저가 차단하는 경우가 많습니다.
1) 먼저 확인할 것
- 요청이 브라우저에서 발생했는가? (서버-서버는 CORS 영향 없음)
- 요청 URL의 origin이 무엇인가? (scheme+host+port)
- 사전요청(preflight:
OPTIONS)이 발생하는가?
2) 가장 흔한 실수
Access-Control-Allow-Origin: *+credentials: true조합 (대부분 허용되지 않음)- 프록시(nginx) 뒤에서 헤더가 누락/덮어쓰기 되는 경우
- preflight
OPTIONS에 대한 응답을 라우팅하지 않는 경우
3) 권장 접근
- 허용 origin을 명시적으로 관리(환경별 allowlist)
- 헤더는 “애플리케이션”이 아니라 “엣지(nginx/CDN)”에서도 변경될 수 있음을 인지
관련 용어: CORS