traefik 入口通配符支持
traefik ingress wildcard support
我正在关注traefik文档(https://docs.traefik.io/routing/routers/),想使用PathPrefix匹配器匹配不同的路径,支持通配符,例如匹配以api/v1开头的路径,它应该匹配
api/v1/客户,
api/v1阿尔法/客户,
api/v1测试版/客户。
如何在路径语法中使用通配符来实现?请在下面找到我的入口 yaml。我尝试了 /api/{v1*}/customers 但没有按预期工作。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: traefik
traefik.frontend.rule.type: PathPrefix
labels:
app: <app_name>
chart: <chart_name>
heritage: Tiller
release: <release_name>
name: <name>
namespace: default
spec:
rules:
- http:
paths:
- backend:
serviceName: <service_name>
servicePort: 443
path: /api/v1*/customers
我弄清楚了它是如何工作的,如果有人想知道,请在此处发帖。我们可以在path
中添加正则表达式
路径:/api/{version:v1([a-z]*)}/customers
我正在关注traefik文档(https://docs.traefik.io/routing/routers/),想使用PathPrefix匹配器匹配不同的路径,支持通配符,例如匹配以api/v1开头的路径,它应该匹配
api/v1/客户,
api/v1阿尔法/客户,
api/v1测试版/客户。
如何在路径语法中使用通配符来实现?请在下面找到我的入口 yaml。我尝试了 /api/{v1*}/customers 但没有按预期工作。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: traefik
traefik.frontend.rule.type: PathPrefix
labels:
app: <app_name>
chart: <chart_name>
heritage: Tiller
release: <release_name>
name: <name>
namespace: default
spec:
rules:
- http:
paths:
- backend:
serviceName: <service_name>
servicePort: 443
path: /api/v1*/customers
我弄清楚了它是如何工作的,如果有人想知道,请在此处发帖。我们可以在path
中添加正则表达式路径:/api/{version:v1([a-z]*)}/customers