【问题标题】:Kubernetes Ingress Redirect and RewriteKubernetes 入口重定向和重写
【发布时间】:2021-02-24 12:22:04
【问题描述】:

快速的问题,我相信它很容易解决,只是似乎无法弄清楚!

我们有一个在 www.awesomeapp.com 上运行的站点——所有站点都在入口路由上运行良好

但是,我还想将路由域重定向到 www.awesomeapp.com,例如 awesomeapp.com => www.awesomeapp.com

我添加了这个注释 nginx.ingress.kubernetes.io/permanent-redirect:https://www.awesomeapp.com

再次一切正常。

我的问题是如何也添加路径。例如

用户进入 awesomeapp.com/myawesomepage 我想要的是它不仅重定向而且附加路径所以它最终像这样

www.blahblah.com/myawesomepage

我添加了这个 ingress.kubernetes.io/rewrite-target: /$1$2 但这不起作用,并且与此 - 路径:/(/|$)(.*)

完整的yaml配置如下:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:  
    name: root-routing
    labels:
      app: awesomeapp
    annotations:
        kubernetes.io/ingress.class: nginx     
        nginx.ingress.kubernetes.io/permanent-redirect: https://www.awesomeapp.com
        ingress.kubernetes.io/rewrite-target: /$1$2
spec:
    tls:
    - hosts:
        - awesomeapp.com
      secretName: awesomeapp-com-tlscert
    rules:
    - host: awesomeapp.com
      http:
        paths:
        - path: /(/|$)(.*)
          pathType: Prefix
          backend:
            service:
                name: awesomeapp
                port:
                    number: 80

谢谢 约翰

【问题讨论】:

  • 你见过this example吗?
  • 是的,但并不完全适用于这种情况,因为域也在发生变化,不是每个人说的域,而是 www 的根。
  • 您能否删除永久重定向并验证它在没有它的情况下是否有效?
  • 您好,不。只是为了确认它现在看起来像这样。 ingress.kubernetes.io/rewrite-target:awesomeapp.com/$2
  • 最好使用from/to www,而不是永久重定向。至于重写:实际上我在这里看不到要重写的内容,但首先尝试调整pathrewrite。例如:ingress.kubernetes.io/rewrite-target: /myawesomepagepath: /(.*)

标签: kubernetes kubernetes-ingress


【解决方案1】:

nginx.ingress.kubernetes.io/server-sn-p: | 返回 301 https://www.awesomeapp.com$request_uri;

【讨论】:

  • 您能否更详细地描述您采取的行动?
猜你喜欢
  • 2020-02-29
  • 2020-08-18
  • 2019-09-24
  • 2021-06-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-17
  • 1970-01-01
  • 2018-10-09
相关资源
最近更新 更多