📚 자료실

프록시 서버(Proxy Server)의 정의와 사용 이유

hjinn0813 2024. 8. 14. 17:45
728x90

SeSAC 수업 당시, 3차 팀플을 진행하면서 Vercel 배포 이후에 내가 제작한 위젯이 제대로 렌더링되지 않아서 '프록시 서버'를 처음 사용했었다. 이름은 익히 들어 알고 있었지만 왜 사용해야 하는지, 어떤 원리로 작동하는지도 모르고 리더님이 알려준대로 코드를 작성했었다. 작동 원리를 이해하는건 아직도 약간 어렵지만, '프록시 서버'의 정의와 사용하는 이유는 지금이라도 알아야겠다 싶어서 공부한 내용을 블로그에 정리해본다!✍


프록시 서버(Proxy Server)의 정의

클라이언트와 서버 사이에서 중계 역할을 하는 서버이다.

클라이언트가 요청을 보내면, 이 요청이 먼저 프록시 서버로 전달되고, 프록시 서버가 이를 실제 서버로 전달한다.

실제 서버에서 받은 응답도 프록시 서버를 통해 클라이언트로 전달된다.


프록시 서버(Proxy Server)를 사용하는 이유

  1. 크로스 도메인(CORS) 문제 해결
    다른 도메인에서 자원을 요청할 때 발생하는 크로스 도메인 이슈를 해결할 수 있다.
    프록시 서버를 사용하면 요청을 같은 도메인에서 발생하는 것처럼 처리할 수 있기 때문이다.
    https://velog.io/@jh100m1/CORS-%EC%97%90%EB%9F%AC%EA%B0%80-%EB%AD%94%EB%8D%B0-%EC%96%B4%EB%96%BB%EA%B2%8C-%ED%95%B4%EA%B2%B0%ED%95%98%EB%8A%94%EA%B1%B4%EB%8D%B0
  2. 보안 문제 해결
    브라우저는 보안상의 이유로 https 페이지에서 http 자원을 로드하는 것을 차단한다.
    https는 전송 중 데이터를 암호화하여 보안을 강화하고 사용자에게 보안 상의 신뢰를 주지만, http는 암호화되지 않아 사용자의 정보가 안전하게 보호되지 않거나 데이터 유출/변조의 위험이 있다. 암호화된 https 페이지가 암호화되지 않은 http 자원을 로드하면, 자원에 대한 정보도 안전하지 않기 때문에 보안 취약점이 발생하고 전체 페이지의 보안이 저하될 수 있다.
728x90