fix: separate web-entrypoint IngressRoute for http->https redirect

A router with TLS enabled (from the Ingress tls section) never matches on
the plain web entrypoint, so entrypoints web,websecure on the Ingress itself
still 404'd on :80. Keep the Ingress on websecure only and add an
IngressRoute on web with the redirect-https middleware.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <[email protected]>
This commit is contained in:
2026-11-06 20:20:23 +01:00
parent db1adfc229
commit f585fa0aa9
2 changed files with 22 additions and 2 deletions
+1 -2
View File
@@ -4,9 +4,8 @@ metadata:
name: ns name: ns
namespace: external namespace: external
annotations: annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web,websecure traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true" traefik.ingress.kubernetes.io/router.tls: "true"
traefik.ingress.kubernetes.io/router.middlewares: external-redirect-https@kubernetescrd
spec: spec:
ingressClassName: traefik ingressClassName: traefik
rules: rules:
@@ -0,0 +1,21 @@
# HTTP (entrypoint web) -> HTTPS redirect voor ns.labzand.com.
# De Ingress zelf heeft een tls-sectie, waardoor Traefik die router alleen
# op websecure matcht; daarom hier een aparte router op web.
# services: api@internal is een dummy - de redirect middleware stuurt
# nooit door naar een backend.
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: ns-redirect
namespace: external
spec:
entryPoints:
- web
routes:
- match: Host(`ns.labzand.com`)
kind: Rule
middlewares:
- name: redirect-https
services:
- name: api@internal
kind: TraefikService