Everything seems normal,but the middleware does not add a header to the request. I don't know where the problem is.If you need additional information, please let me know. Thank you very much for your help!
~$ kubectl get ingressclass -n test
NAME CONTROLLER PARAMETERS AGE
traefik traefik.io/ingress-controller <none> 4d
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: gsp
namespace: test
annotations:
traefik.ingress.kubernetes.io/service.passhostheader: "true"
traefik.ingress.kubernetes.io/router.middlewares: test-fix-header@kubernetescrd
spec:
rules:
- host: minikube.gsp.devops
http:
paths:
- path: /domain
pathType: Prefix
backend:
service:
name: gsp-domain
port:
number: 8084
apiVersion: traefik.io/v1alpha1
kind: Middleware
metadata:
name: fix-header
namespace: test
spec:
headers:
customRequestHeaders:
X-Gsp-Ua: "browser"
Version:
k8s v1.23.8
traefik v2.1
I tried to add kubernetes.io/ingress.class: traefik
,but 404 will appear when accessing / domain
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: gsp
namespace: test
annotations:
#kuberneteskubernetes.io/ingress.class: traefik
# kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/service.passhostheader: "true"
traefik.ingress.kubernetes.io/router.middlewares: test-fix-header@kubernetescrd