反向代理 (Reverse Proxy)
部分內容由 LLM 生成,尚未經過人工驗證。
Forward Proxy vs Reverse Proxy
| Forward Proxy | Reverse Proxy | |
|---|---|---|
| 代理對象 | 代理客戶端 | 代理伺服器 |
| 隱藏對象 | 隱藏客戶端身份 | 隱藏後端伺服器 |
| 典型用途 | 翻牆、匿名瀏覽、企業出口 | Load balancing、SSL 終止、快取 |
請求流程
sequenceDiagram
participant C as Client
participant R as Reverse Proxy
participant B as Backend Server
C->>R: HTTPS Request (example.com)
Note over R: SSL 終止 / 路由決策
R->>B: HTTP Request(內網轉發)
B->>R: Response
R->>C: HTTPS Response
主要功能
| 功能 | 說明 |
|---|---|
| SSL 終止 | Client → Proxy 走 HTTPS,Proxy → Backend 可用 HTTP |
| Load Balancing | 分散流量到多台後端 |
| 快取 | 快取靜態內容,減輕後端壓力 |
| 隱藏後端 | Client 無法直接看到後端 IP |
| 壓縮 | gzip 壓縮回應,節省頻寬 |
常見實作
- Nginx - 最常見,支援 HTTP/HTTPS 反向代理
- HAProxy - 高效能 L4/L7 代理
- Caddy - 自動 HTTPS,設定簡單
- Traefik - 容器環境(Docker/K8s)常用