Traefik 2 HTTP到HTTPS重定向与TLS不起作用

我想在一个IngressRoute中将http设置为https重定向,但是当我尝试访问http端点traefik时,使用下面的配置返回404 not found错误。如果我删除tls部分,则重定向有效,但tls无法。

我都可以工作吗?

traefik版本2.1.0-rc2

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: console-web
  namespace: dev
  labels:
    app: console-web
spec:
  entryPoints:
    - web
    - websecure
  routes:
    - match: Host(`console.example.com`)
      kind: Rule
      services:
        - name: console-web
          port: 8080
      middlewares:
        - name: https-redirect
  tls:
    secretName: example-com-tls
w12240cn 回答:Traefik 2 HTTP到HTTPS重定向与TLS不起作用

这是一个旧问题,但是这可能会对某人有所帮助。这可能无法直接工作,因为我没有测试过。对于kubernetes,应该先按照以下方式工作,然后定义中间件的工作方式

未经测试的代码

apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
  name: test-redirectscheme
spec:
  redirectScheme:
    scheme: https

然后定义IngressRoute

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: ingress1
  namespace: default
spec:
  entryPoints:
    - websecure
  routes:
    - match: Host(`somehost`)
      kind: Rule
      services:
        - name: console-web
          port: 8080
  tls:
    secretName: example-com-tls
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: ingress2
  namespace: default
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`somehost`)
      middlewares:
        - name: test-redirectscheme
      kind: Rule
      services:
        - name: console-web
          port: 80

需要两个入口,因为一个入口会将流量重定向到另一个入口。我还假设如果您没有两个端口,则可以重用前一个端口,因为无论如何它将被重定向到https。让我知道它是否不起作用。

在花了数小时在docker上为HTTP端点解决此404问题后,我发现了这个https://stackoverflow.com/a/62093408/2442649

本文链接:https://www.f2er.com/2954032.html

大家都在问