首页 > 解决方案 > Istio:在命中选择性端点时处理主机重定向

问题描述

我有一个具有旧主机名和新主机名的应用程序。在 Istio 发挥作用之前,我已经定义了两个 nginx 入口,每个入口都处理一个主机名。对于使用旧主机名请求的任何流量,我希望将其重定向到新主机名,但 API、http 或非 GET 请求除外。在 ingress 中,我可以将这样的内容定义为位置片段:

set $redir 1;
if ($request_method != GET) {
        set $redir 0;
}
if ($request_uri ~ ^/api) {
        set $redir 0;
}
if ($http_authorization) {
        set $redir 0;
}
if ($redir = 1) {
        return 301 https://{{ .redirectHost }}$request_uri;
}

查看 Istio 文档,我知道如果字符串可以匹配 , 或 way ,我可以重写请求prefixexactregex它们不符合我的用例。关于如何重写响应的任何想法?

标签: kubernetes-ingressistio

解决方案


推荐阅读