与traefik PathPrefixStrip和AddPrefix等效的入口为nginx.ingress.kubernetes.io/rewrite-target

时间:2019-02-01 09:38:35

标签: rancher nginx-ingress

我目前正在尝试将可正常运行的应用程序从docker-compose / traefik移植到rancher / inress

当前traefik对我有用,因为我的trafefik规则必须在/ api上联系我的所有服务:

traefik.default.frontend.rule: "Host:<host_address>;PathPrefixStrip: /<service-name>/api/;AddPrefix: /api"

我正在尝试在入口方面实现同样的目标。我已经尝试了好几件事,最接近可行的解决方案的是:

牧场主入口: 路径:/ myservice 服务:我的服务 端口:3000

nginx.ingress.kubernetes.io/rewrite-target:/

然后,当我致电/ myservice / api / anything / anything时,实际上已重定向到预期服务上的/ api / anything / anything

唯一的问题是我不明白它为什么起作用,我蛮横地强迫我闯入,直到它开始起作用。我特别遇到了尾随问题/如果丢失请求,我的请求将被严重重写。我还尝试过使用正则表达式做很多事情(示例中臭名昭著的?(*。))

有人可以解释一下入口如何重写url吗?

0 个答案:

没有答案