gpt4 book ai didi

Kubernetes NGINX入口configmap 301重定向

转载 作者:行者123 更新时间:2023-12-02 09:10:04 25 4
gpt4 key购买 nike

在Kubernetes中使用NGINX入口,我看不到一种方法,可以按主机将流量从非www转发到www,或转发到另一个域等

我试过在configmap文档中查找,但看不到我需要的内容。也许它可以进入入口本身?

我也看到了一个使用注释的示例,但这似乎是在整个Ingress范围内进行的,因此我无法对每个主机进行特定的重定向

最佳答案

确实,通过简单的注释即可实现重定向:

  • nginx.ingress.kubernetes.io/permanent-redirect: https://www.gothereinstead.com
  • nginx.ingress.kubernetes.io/from-to-www-redirect: "true"

  • 但是正如您提到的,它是“入口”的,不能按主机,按域甚至按路径配置。因此,您必须自己通过 ingress.kubernetes.io/configuration-snippet 注释来完成此操作,由于使用了正则表达式,它为您提供了强大的功能:
    kind: Ingress
    apiVersion: extensions/v1beta1
    metadata:
    name: self-made-redirect
    annotations:
    ingress.kubernetes.io/configuration-snippet: |
    if ($host = 'blog.yourdomain.com') {
    return 301 https://yournewblogurl.com;
    }
    if ($host ~ ^(.+)\.yourdomain\.com$) {
    return 301 https://$1.anotherdomain.com$request_uri;
    }
    spec:
    rules:
    - host: ...

    如果您不习惯NGINX,您将了解有关代码片段中可能存在的内容的更多信息,尤其是 the NGINX documentation中的 $host变量是什么。

    关于Kubernetes NGINX入口configmap 301重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53518739/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com