Reverse Proxy
Coloque o Fluxheim à frente de um servidor de aplicação. O Fluxheim trata de TLS, headers, limites e seleção upstream.
Basic proxy
[[vhosts]]
name = "app"
hosts = ["app.example.com"]
[[vhosts.routes]]
path_prefix = "/"
action = "proxy"
upstreams = ["127.0.0.1:3000"]
Escolhas de route
| Funcionalidade | Use quando |
|---|---|
path_exact | Um URL precisa de uma route precisa. |
path_prefix | Uma subárvore URL inteira vai para um backend. |
strip_prefix | O backend não deve ver o public prefix. |
rewrite_prefix | O backend espera um internal prefix diferente. |
methods | Uma route só deve aceitar métodos HTTP selecionados. |
Exemplo de path rewrite
[[vhosts.routes]]
name = "api"
path_prefix = "/api/"
strip_prefix = "/api/"
rewrite_prefix = "/internal/"
[vhosts.routes.proxy]
upstreams = ["10.0.0.20:8080"]
connect_timeout_secs = 5
read_timeout_secs = 30
send_timeout_secs = 30
Notas de produção
- Mantenha a aplicação em loopback ou numa rede privada.
- Defina request body limits antes de expor uploads.
- Use trusted proxy settings only for networks you control.
- Prefira routes explícitas a uma grande fallback quando paths diferentes precisam de regras de segurança diferentes.