CROS 도메인

남기현·2022년 2월 12일
0

트러블슈팅

목록 보기
1/5
post-thumbnail

📌크로스 도메인이란?

서로다른 도메인간의 호출

본인이 개발한 웹사이트에서 사용하기 위한 API 서버를 구축하였는데 다른 웹서비스에서 이 API 서버를 사용하게 된다면 문제가 생기게 된다.
그래서 JavaScript는 Same Origin Policy(동일 출처 정책)라는 정책을 통해 다른 도메인의 서버에 요청하는 것을 차단시킨다.
따라서 동일한 도메인 내에서만 서버 요청을 허락하게 된다.

📌이슈 경험

프로젝트를 진행하다 보면 각각의 프로젝트에 따라 혹은 효율성이나 성능을 위해 여러 서버를 두는 경우가 있다.
경험했던 프로젝트의 경우 한 고객사에서 파트별로 여러 협력업체를 두어 하나의 엔진 위에 여러 엔진을 동시에 올려 각 프로젝트마다 다른 서버를 갖게 두었는데 물리적으로 분리된 서버이기 때문에 서로 간의 API를 호출할 수가 없다.
하지만 각 파트별로 다른 프로젝트를 진행하지만 결국 큰 틀은 하나의 프로젝트이기 때문에 공통 업무적인 부분이 생기고

업무의 효율성과 코드 성능을 위해 교집합이 생기는 부분을 합쳐야 할 필요가 있었다.

이럴 경우 어쩔 수 없이 Same Origin Policy(동일 출처 정책) 을 뚫고 CROS DOMAIN 문제를 해결해야 했다.🤔

📌이슈 해결

처음 당황했던 것이 도메인을 바꾸니 도메인 위에 함께 띄어지는 부가 서비스들이 🔥500 ERROR🔥 혹은 🔥404 ERROR🔥 가 여기저기 발생하여 결국 원점으로 돌아갔던 기억이 있다.
무한 구글구글구글구글구글구글링을 통해,,⏱

document.domain
ex) document.domain = "naver.com";

방법을 활용했다.

앞서 말했듯이 업체마다 각각의 서버를 두고 있지만 하나의 서버 위에 모두 올라가 있기 때문에
A) https://mail.naver.com
B) https://blog.naver.com
[A],[B] 사이트와 같이 공통 도메인은 같고 서브 도메인만 다른 형식으로 이루어져 있어 다음과 같은 방법을 이용했다👍

profile
내가 보려고 만든 velog

0개의 댓글