# Reverse Proxy (리버스 프록시)

> Proxyman Reverse Proxy로 시스템 프록시를 사용하지 않는 앱과 명령줄 도구의 HTTP 및 HTTPS 트래픽을 로컬 포트를 통해 캡처하세요.

## 1. 무엇인가요? {#1-whats-it}

Reverse Proxy는 트래픽을 원격 서버로 투명하게 전달하는 **로컬 웹 서버**를 만듭니다. 이렇게 하면 Proxyman이 트래픽을 캡처하고 기록할 수 있습니다.

Reverse Proxy는 HTTP/HTTPS 프록시를 지원하지 않는 클라이언트를 다룰 때, 또는 HTTP 프록시 설정이 너무 복잡할 때 유용합니다.

예를 들어 대부분의 명령줄 앱은 시스템 HTTP/HTTPS 프록시 설정을 따르지 않으므로 Proxyman이 트래픽을 캡처할 수 없습니다. 이를 해결하려면 다음 중 하나를 선택할 수 있습니다.

* HTTP/HTTPS 프록시를 직접 설정합니다. 사용하는 네트워크 라이브러리에 따라 복잡할 수 있습니다. 자세한 내용은 [서드파티 네트워크 라이브러리의 요청이 보이지 않을 때](https://proxyman.com/docs/ko/troubleshooting/couldnt-see-any-requests-from-3rd-party-network-libraries)를 참고하세요.
* Reverse Proxy를 사용합니다.

Reverse Proxy는 Proxyman 2.29.0 이상에서 사용할 수 있습니다.

## 2. 장점 {#2-benefit}

* 클라이언트를 Proxyman 로컬 웹 서버에 연결하면 Proxyman이 트래픽을 원격 호스트로 전달합니다. 클라이언트에 HTTP/HTTPS 프록시를 설정할 필요가 없습니다.
* Charles Proxy의 Reverse Proxy 설정을 가져올 수 있습니다.
* Host 헤더를 유지합니다.
* 새 항목을 만들면 Proxyman이 사용 가능한 포트를 자동으로 선택합니다.
* Reverse Proxy 트래픽에도 Breakpoint, Map Local, Scripting을 사용할 수 있습니다 💯.

## 3. 사용 방법 {#3-how-to-use}

1. **Tools** 메뉴 -> **Reverse Proxy…**를 여세요.
2. 새 항목을 만들고 Remote Host와 Remote Port를 입력하세요. Proxyman이 Local Port를 자동으로 선택합니다. 다른 포트로 바꿀 수 있지만, 해당 포트를 사용할 수 있어야 합니다.
3. 저장합니다.
4. 클라이언트 앱에서 URL을 `http://localhost:<local_port>`로 변경하세요(예: `http://localhost:10000`).
5. 요청을 보내고 Proxyman 앱에서 트래픽을 확인하세요.

![로컬 포트 10000을 포트 443의 httpbin.proxyman.app에 매핑하는 httpbin 항목이 있는 Proxyman Reverse Proxy 창](https://proxyman.com/docs/assets/proxyman-reverse-proxy-window.jpg)

_Reverse Proxy 창_

![로컬 포트 10000, 원격 호스트 httpbin.proxyman.app, 원격 포트 443이 설정된 Proxyman Reverse Proxy 항목 편집기](https://proxyman.com/docs/assets/proxyman-reverse-proxy-entry-editor.jpg)

_Reverse Proxy 항목_

> **노트:** Remote Port가 443이면 Proxyman이 원격 서버와 SSL 핸드셰이크를 수행합니다. 그렇지 않으면 원격 서버를 일반 HTTP 웹 서버로 취급합니다.
>
> Proxyman 5.17.0부터는 **Force Using SSL when connecting to Remote Port**를 체크하면 어떤 원격 포트에서든 SSL/TLS를 사용할 수 있습니다.

> **노트:** **Preserve Host in Header fields**는 원래의 Host 값을 유지합니다. Host 값이 일치하지 않으면 원격 서버가 요청을 거부할 수 있으므로 주의해서 사용하세요.

## 더 알아보기 {#learn-more}

* [HTTP 프록시를 사용하지 않는 앱에서 Reverse Proxy로 HTTP/HTTPS를 캡처하는 방법](https://proxyman.com/posts/2023-03-22-How-to-use-Reverse-Proxy)
