Server
nginx - react - springboot 환경에서 cors이슈해결기록
기기디
2021. 5. 20. 13:00
신규프로젝트 초기설정 진행중
AWS EC2에서 docker로 배포하고 react는 node로 띄우고 springboot는 tomcat으로 띄워쓰는 상황.
proxy를 설정하여 cors를 해결하면 dev에만 적용된다. 배포환경에서 해결할떄는 api server단에서 설정
개발환경에서는 package.json에 "proxy" : "[uri]"설정하거나 http-proxy-middleware설치하여 설정잡아서 해결
운영환경에서는 springboot쪽에 WebMvcConfigurer를 implement받은 클래스를 생성하여
addCorsMappings를 오버라이드하여 설정함.
리액트단에서
axios.defaults.baseURL = process.env.NODE_ENV === 'development' ? '[dev url]' : '[prd url]';
다음과 같이 개발,운영환경을 구분하여 설정함.
nginx문제인줄 알고 nginx.conf에
error_page 405 =200 $uri;
설정을 넣기도 했지만 잘 안됐음