TERM 029
Reverse Proxy
サーバー群の手前で、通信を受け止める
Reverse Proxyは、利用者からの要求をサーバーの手前で受け、適切なバックエンドへ転送して結果を返す仕組みです。TLS終端、ルーティング、キャッシュ、圧縮、アクセス制御などを集約できます。
サーバーの手前でリクエストを受け、適切な処理先へ渡す仕組みの全体像。
CONTENTSこの記事の目次+
QUICK OVERVIEW
30秒でつかむ
経路の集約
/apiと/assetsなどを異なるサービスへ振り分けます。
暗号通信の終端
証明書管理を入口へ集約し、内部転送を制御します。
元情報の伝達
元IPやHostを信頼できるヘッダーとしてバックエンドへ渡します。
01 — DEFINITION
Reverse Proxyとは
何か
Reverse Proxyは、利用者からの要求をサーバーの手前で受け、適切なバックエンドへ転送して結果を返す仕組みです。TLS終端、ルーティング、キャッシュ、圧縮、アクセス制御などを集約できます。
02 — HOW IT WORKS
仕組みを
3段階で見る
細部へ入る前に、入力から結果までの役割を順番に捉えます。
入口で受信
公開URLとTLS接続を一か所で受ける。
→転送先を選ぶ
HostやPath、ヘッダーからバックエンドを決める。
→応答を中継
必要な加工やキャッシュを行い利用者へ返す。
Reverse Proxyを理解するときの、最小の処理単位です。
03 — ESSENTIALS
押さえるべき
3つの要点
名前だけでなく、この3点の関係まで理解すると実装へつなげやすくなります。
経路の集約
/apiと/assetsなどを異なるサービスへ振り分けます。
暗号通信の終端
証明書管理を入口へ集約し、内部転送を制御します。
元情報の伝達
元IPやHostを信頼できるヘッダーとしてバックエンドへ渡します。
04 — REAL WORLD EXAMPLE
一つのドメインで複数サービスを公開する
example.com配下にWeb、API、画像サービスがあります。
- 01
入口でHTTPS接続を終端する
- 02
/apiをAPI群、/assetsを配信群へ転送する
- 03
共通のアクセスログと制限を適用する
05 — WATCH OUT
理解するときの
注意点
便利な仕組みほど、守備範囲と失敗の前提を明確にします。
転送ヘッダーの信頼境界を決める
外部から偽装されたX-Forwarded-Forをそのまま信用しません。
入口の容量と冗長性を確保する
すべての通信が通るため、監視・拡張・フェイルオーバーが重要です。
IN ONE SENTENCE
Reverse Proxyとは?
サーバーの手前でリクエストを受け、適切な処理先へ渡す仕組み。
