Engineering Note

[Server] 리버스 프록시(Reverse Proxy)란? 본문

Server

[Server] 리버스 프록시(Reverse Proxy)란?

Software Engineer Kim 2025. 9. 20. 14:08

리버스 프록시란?

- 클라이언트와 서버 사이에 위치해서 서버를 대신해 클라이언트의 요청을 받고 처리하는 중간 서버

 

특징

- 클라이언트 입장에서는 리버스프록시가 실제 서버처럼 보임. 실제 백엔드 WAS 서버는 클라이언트로부터 숨겨진다.

- 서버측들을 보호하고 대표하는 역할.

 

 

 

리버스 프록시의 주요 기능

- 어느 백엔드로 보낼 지 라우팅 결정

- 캐싱

  - 정적 컨텐츠, 동적 컨텐츠(API 응답) 캐싱 

- 보안(백엔드 서버 은닉)

- SSL 종료(클라이언트가 HTTPS로 요청을 전송하면 리버스 프록시가 SSL/TLS 연결을 받아서 복호화 HTTP로 백엔드 서버에 전달, 다시 백엔드가 응답하면 HTTPS로 암호화해서 클라이언트에 전달)

 

 

캐싱 설정 예시

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m;

server {
    location /api/ {
        proxy_pass http://backend;
        proxy_cache my_cache;
        proxy_cache_valid 200 10m;  # 200 응답을 10분간 캐시
    }
    
    location /static/ {
        proxy_pass http://backend;
        proxy_cache my_cache;
        proxy_cache_valid 200 1h;   # 정적 파일은 1시간 캐시
    }
}

 

 

 

리버스 프록시 사용 이유

- SSL 인증서를 리버스 프록시에서만 관리

- 백엔드, 서버 암복호화 부담 최소화

- 중앙화된 보안 관리

 

 


클라이언트 프록시

- 리버스 프록시와 반대로 클라이언트 측에서도 사용하는 Proxy 서버. 그냥 Proxy 라고 부름.

 

Comments