Envoy-Routing und Rewriting-Snippet
Es ist möglich, URLs mit Envoy für das Backend umzuschreiben. Bitte beachten Sie, dass die HTML-Ausgabe die richtigen Routen haben muss! (Deshalb werde ich nicht weiter in diese Richtung forschen).
REF: https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/route/route.proto#route-route
Beachten Sie auch, dass die Zeichenkette bei direct_response -> body -> inline_string wörtlich wiedergegeben wird, auch wenn Sie HTML-Tags darin einfügen. Wahrscheinlich ist ein Header gesetzt, der besagt, dass dies vom Browser als Text interpretiert werden soll.
Filter:
- name: envoy.http_connection_manager
config:
stat_prefix: ingress_https
route_config:
virtual_hosts:
- name: backend
domains: ["*"]
Routen:
- match: { prefix: "/taxgod/" }
route: { cluster: target_taxgod, prefix_rewrite: "/"}
- match: { prefix: "/taxgod" }
route: { cluster: target_taxgod, prefix_rewrite: "/"}
- match: { prefix: "/picockpit/" }
route: { cluster: target_picockpit, prefix_rewrite: "/" }
- match: { prefix: "/picockpit" }
route: { cluster: target_picockpit, prefix_rewrite: "/" }
- match: { prefix: "/gagarin" }
direct_response: { status: 200, body: { inline_string: "Bringing redemption to my dark night. Beautiful surrender is where I wanna be." } }
- match: { prefix: "/" }
direct_response: { status: 200, body: { inline_string: " a href="/taxgod" Taxgod /a - a href="/picockpit" PiCockpit /a " } }
http_filters:
- name: envoy.router
config: {}
