我的其中一个应用程序具有以下入口资源

apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    name:""
    annotations:
      ingress.kubernetes.io..
  spec:
    rules:
    - host: my-app
      http:
        paths:
        - path: /path/to/service
          backend:
            serviceName: my-service
            servicePort: 80

这可以按预期工作,我可以通过http://my-app/path/to/service访问我的服务。但是,我的应用程序中的服务采用的查询参数似乎无法正确重定向,例如:
http://my-app/path/to/service/more/paths

这使我回到http://my-app/path/to/service
如何维护此路径结构?

最佳答案

我相信您需要在路径上使用通配符:

apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    name:""
    annotations:
      ingress.kubernetes.io..
  spec:
    rules:
    - host: my-app
      http:
        paths:
        - path: /path/to/service/*
          backend:
            serviceName: my-service
            servicePort: 80

更多信息here。似乎很难找到带有通配符示例的文档。并不是说这是特定于nginx的,它可能无法与其他入口 Controller 一起使用。

关于Kubernetes入口规范中的路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52667073/

10-12 17:35
查看更多