어제 다 해결을 했다고 생각했는데, 기능 구현을 위해 서버를 내렸다 - 올렸다 반복을 하다가 갑자기 프론트에서 들려오는 말...
" CORS가 다시 터졌는데요"
......
아 제발 그것만은 ㅠㅠㅠㅠㅠㅠㅠ 도대체 뭘까 또 한참 삽질하다가 결국 다른 분께 S.O.S..! 우리의 문제는 CORS 설정을 이곳 저곳에서 해주고 있는게 문제였다. 1차적으로 스프링 부트 파일에서, 또 nginx 프록시 서버에서 설정을 해주니까 요청이 됐다 안됐다 막혔다가 다시 풀렸다가 반복을 하는 것이었다. 그래서 nginx에서 설정해줬던 cors 내용을 다 지워주고 동작하니 다행히도 잘 되는 우리의 서버...!!!
그래서 오늘은 무지성으로 일단 갖다 붙여넣었던 프록시 서버에 대해 조금 더 탐구해보았다.
우선 디자인 패턴에서 보았던 '프록시 패턴'의 프록시와 '프록시 서버'의 프록시는 조금 다른 개념인듯 하다.
프록시 서버는 클라이언트와 서버 사이에서 대리로 통신을 수행해준다. 왜 쓰냐면? 캐시 데이터를 사용하여 데이터 전송 시간을 줄여주고 트래픽을 줄일 수 있음, 그리고 프록시 서버가 중간에서 IP를 숨겨줌으로써 보안의 역할도 함. 또한 접속을 우회할 수 있는 길을 만들어준다고 한다.
이러한 프록시 서버에는 Forward 프록시, Reverse 프록시, open 프록시라는 종류가 있다고 한다.
- Forward 는 아무래도 순방향을 뜻하는 듯. 클라이언트에서 직접 요청을 하는 것이 아니라 프록시 서버를 거쳐서 요청을 보내는 방식 (기업에서 많이 쓰임)
- Reverse 는 그 반대겠지. 클라이언트에서 요청을 보냈을 때 서버에서 프록시 서버를 거쳐서 응답을 보내는 방식이다.
- Open 은 모든 인터넷 사용자가 접근 가능한 프록시 서버임 말그대로 open됨.
아.. 여기서 고민
그럼 우리 프로젝트는 프록시 서버를 어떤 방식으로 적용하고 있는 것일까..?
https://liveyourit.tistory.com/251
https://velog.io/@jangwonyoon/Proxy-Server%ED%94%84%EB%A1%9D%EC%8B%9C-%EC%84%9C%EB%B2%84%EB%9E%80
'T.I.L. :: Today I Learned > 항해99 14기 본과정' 카테고리의 다른 글
Day 64. 랜덤 Pending 다시 등장.. 두두등장... (0) | 2023.06.05 |
---|---|
Day 63. 터지고 또 터지고 또 또 터지고 (1) | 2023.06.04 |
Day 61. CORS 잘가 (0) | 2023.06.02 |
Day 60. Bye 502, Hi 랜덤 CORS (0) | 2023.06.01 |
Day 59. 오늘 제 생일이에요.. 근데.. 배포 지옥 (0) | 2023.05.31 |