kubernetes - Kubernetes Ingress rewrite-target - 无论如何要在重写时保留地址?
问题描述
我有一个在 pod 中运行的 oauth2 服务,需要用户发送请求到
http://[地址]/oauth/token?grant_type=client_credentials&scope=[范围]
我有如下的 Ingress 规则,在我看来,Ingress 在重写时正在删除“oauth”字。
例如,当用户向 http://address.com/oauth/token?grant_type=client_credentials&scope=[scope]提交请求时使用下面的 Ingress 规则, 那么 auth-service 会收到这样的请求: http ://address.com /token?grant_type=client_credentials&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
解决方案
我通过删除 rewrite-target 注释解决了这个问题。
我还必须在 /oauth 之后删除 /*
我希望这对其他人有所帮助。
推荐阅读
- reactjs - 部署到 azure 应用服务时反应无效的主机头错误
- python - 在 Python 中将两个空列表之间的所有列表(字符串列表)合并为一个列表
- loopbackjs - 模型中的环回数据源特定配置
- excel - 如何在 Wscript.Shell + cmd.exe 中使用变量?
- wordpress - WP火箭缓存问题
- kotlin - 过滤 val 变量而不更改其声明 Kotlin
- google-apps-script - 左侧分配无效(使用 emailTemp 文件)
- python - 无法使用 Selenium Webdriver 定位和单击元素
- c - 运行 ISR 直到 X 发生
- c++ - 对于 realloc 生成的新分配的内存,我们可以将内存初始化为 0 吗?