enviado a servir uma resposta estática
Além de rotear e redirecionar você pode servir respostas estáticas com o Envoy.
Neste caso, eu quero servir uma resposta proibida (403)
route_config:
virtual_hosts:
- nome: picockpit
domínios: ["picockpit.local:443", "picockpit.local"]
rotas:
- ...partida: Prefixo: "/demo" }
resposta_directa:
status: 403
corpo:
inline_string: "Proibido."
- ...partida: Prefixar: “/”}
rota: {cluster: target_picockpit}
Ele também pode servir arquivos do sistema de arquivos local como resposta.
Ref:
- https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/core/base.proto#envoy-api-msg-core-datasource
- https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/route/route.proto#envoy-api-msg-route-directresponseaction
- https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/route/route.proto#envoy-api-msg-route-route
PS. Se você receber o erro
erro na inicialização da configuração '/etc/envoy/envoy.yaml': Incapaz de analisar JSON como proto (INVALID_ARGUMENT:(route_config.virtual_hosts[0].routes[2].direct_response.body): valor inválido "Forbidden" para type type.googleapis.com/envoy.api.v2.core.DataSource), você está tentando definir a string diretamente no body - você tem que defini-la como um subvalor de inline_string do body. veja meu exemplo acima.