【问题标题】:Kubernetes Ingress rewrite-target - anyway to preserve the address when rewrite?Kubernetes Ingress rewrite-target - 无论如何要在重写时保留地址?
【发布时间】:2019-12-15 03:03:41
【问题描述】:

我有一个在 pod 中运行的 oauth2 服务,需要用户向其发送请求

http://[address]/oauth/token?grant_type=client_credentials&scope=[scope]

我有如下 Ingress 规则,在我看来,Ingress 在重写时正在删除“oauth”字。

例如,当用户提交请求时使用下面的 Ingress 规则: http://address.com/oauth/token?grant_type=client_credentials&scope=[scope] 然后 auth-service 收到这样的请求: http://address.com/token?grant_type=client_credentials&scope=[scope]

有没有办法解决这个问题?

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: gateway-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - host: address.com
    http:
        paths:
        - path: /oauth/*
          backend:
            serviceName: auth-service
            servicePort: 8052

【问题讨论】:

    标签: kubernetes kubernetes-ingress nginx-ingress


    【解决方案1】:

    我通过删除 rewrite-target 注释解决了这个问题。

    我还必须在 /oauth 之后删除 /*

    我希望这对其他人有所帮助。

    【讨论】:

    • 你拯救了我的一天,先生
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 2019-05-03
    • 1970-01-01
    • 2018-09-25
    • 1970-01-01
    相关资源
    最近更新 更多