从Kubernetes入口删除路由路径 [英] Remove routing path from Kubernetes ingress
问题描述
我在kubernetes中部署了称为测试"的服务.服务名称:测试端口:80
I deployed service called "test" in kubernetes. service name : test port : 80
有一个名为"/abc"的端点
There is endpoint called "/abc"
ingress.yaml
ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: load-balancer
spec:
rules:
- http:
paths:
- path: /test/*
backend:
serviceName: test
servicePort: 80
API调用" http://ip-address/test/abc "给出了404错误.但是端点"/test/abc"可以正常工作.
API call "http://ip-address/test/abc" given 404 error. But endpoint "/test/abc" working properly.
路由时,我需要跳过"/test".我该怎么做.
I need skip "/test" when routing. How I do this.
推荐答案
您正在寻找url重写功能.当前仅在nginx-ingress上受支持(不支持GKE入口). https://github.com/kubernetes/ingress-nginx/blob/master/docs/examples/rewrite/README.md .
You're looking for url rewriting feature. It's currently only supported on nginx-ingress (not GKE ingress). https://github.com/kubernetes/ingress-nginx/blob/master/docs/examples/rewrite/README.md.
但是您可以根据需要在GKE上安装Nginx-ingress控制器,其中有文档有关如何操作.
But you can install nginx-ingress controller on GKE if you want, there's documentation on how to do that.
这篇关于从Kubernetes入口删除路由路径的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!