Fluxheim/Documentos/Reverse Proxy

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

FuncionalidadeUse quando
path_exactUm URL precisa de uma route precisa.
path_prefixUma subárvore URL inteira vai para um backend.
strip_prefixO backend não deve ver o public prefix.
rewrite_prefixO backend espera um internal prefix diferente.
methodsUma 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.
Português