Traefik 2.2 с http на https перенаправление

Я следую руководству и могу получить доступ к своему веб-сайту через HTTP и HTTP. однако перенаправление не работает для меня, есть идеи о том, что может быть не так?

# IngresRoute
---
kind: IngressRoute
apiVersion: traefik.containo.us/v1alpha1
metadata:
  name: whoami
  namespace: default

spec:
  entryPoints:
  web:
    address: :80
    http:
      redirections:
        entryPoint:
          to: websecure
          scheme: https
          permanent: true

  websecure:
    address: :443

  routes:
  - match: Host(`hello.mydomain.io`)
    kind: Rule
    services:
    - name: whoami
      port: 80
  tls: {}

person Deano    schedule 06.09.2020    source источник


Ответы (1)


Я использую Docker compose, поэтому вам может не подойти. Но предлагается добавить промежуточное программное обеспечение схемы перенаправления в файл динамической конфигурации.

http:
  middlewares:
    https_redirect:
      redirectScheme:
        scheme: https
        permanent: true

Или просто добавьте промежуточное ПО к своей службе, если у вас нет доступа к конфигурациям Traefik.

Я предпочитаю динамическую конфигурацию, потому что тогда вы можете зарегистрировать ее в любой службе по мере необходимости, используя https_redirect@file.

Однако для использования этого метода вам понадобится маршрутизатор для каждой точки входа. И зарегистрируйте промежуточное ПО только на маршрутизаторе http.

Я уверен, что есть другие, лучшие способы. Но если вам нужно, чтобы некоторые приложения автоматически перенаправляли, а некоторые нет, это лучшее решение, которое я нашел до сих пор.

person Pseudos    schedule 08.09.2020