繁体   English   中英

将通配符域路由到 nginx 入口中的不同路径

[英]routing wildcard domain to different paths in nginx ingress

我如何实现与此类似的东西。

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: nginx
    ingress.kubernetes.io/rewrite-target: /c/{word-maching-wildcard}

  name: some-route
  namespace: prod
spec:
  rules:
     - host: "*.example.com" # {hello}.example.com -> hello.example.com/hello
       http:
        paths:
         - backend:
            serviceName: svc
            servicePort: 8080
           path: /

在路由到上游服务之前,有什么方法可以捕获子域中的匹配词和路径中的 append。

来自官方文档:

spec.rules.host字段不支持正则表达式和通配符。 必须使用完整的主机名。

请参阅: nginx-ingress-matching

但是我发现了类似的问题,建议编写您自己的 controller 写出一个 nginx 配置,该配置在适当的proxy_pass或重定向行中使用$http_host

阅读更多: 通配符 url 映射

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM