【问题标题】:traefik 2.4 redirecting from https to httptraefik 2.4 从 https 重定向到 http
【发布时间】:2021-07-20 01:05:21
【问题描述】:

我的服务超集配置为将 HTTP 重定向到 HTTPS

superset:
image: superset:base
container_name: superset_app
ports:
  - '8080'
labels:
  - "traefik.enable=true"
  - "traefik.http.middlewares.http-to-https.redirectscheme.scheme=https"
  - "traefik.http.routers.superset-http.middlewares=http-to-https"
  - traefik.http.routers.superset-http.rule=Host("superset-lab.domain.com")
  - "traefik.http.routers.superset-http.entrypoints=web"
  - traefik.http.routers.superset.rule=Host("superset-lab.domain.com")
  - "traefik.http.routers.superset.entrypoints=web-secure"
  - "traefik.http.routers.superset.tls=true"
  - "traefik.http.services.superset.loadbalancer.server.port=8080"

此配置按预期工作。

curl -Ik http://superset-lab.domain.com/login/?username=9999999&redirect=/superset/dashboard/
[1] 85007
HTTP/1.1 307 Temporary Redirect
Location: https://superset-lab.domain.com/login/?username=999999
Content-Length: 18
Content-Type: text/plain; charset=utf-8

但是当我尝试通过 HTTPS 直接访问时,请求被重定向到 http。

curl -Ik https://superset-lab.domain.com/login/?username=999999&redirect=/superset/dashboard/
[1] 85096
HTTP/1.1 302 Found
Content-Length: 209
Content-Type: text/html; charset=utf-8
Date: Mon, 26 Apr 2021 16:09:11 GMT
Location: http://superset-lab.domain.com/
Server: Werkzeug/1.0.1 Python/3.6.9
HttpOnly; Path=/; SameSite=Lax
Vary: Cookie

我的 traefik 标签有问题还是应用程序中有问题(超集)?

【问题讨论】:

    标签: docker-compose traefik apache-superset


    【解决方案1】:

    问题不在于 traefik。 Apache超集使用flask,需要在flask中设置X-Fowarded标头。

    这里有一些解释。 https://stackoverflow.com/a/23504684/4175515

    在Apache超集的具体情况下,只需在config.py中设置ENABLE PROXY_FIX=True即可解决问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-12
      • 1970-01-01
      • 2020-04-01
      • 2019-09-10
      • 2017-10-06
      • 1970-01-01
      相关资源
      最近更新 更多