您好我将HTTP请求重定向到HTTP时遇到问题,当traefik在docker中运行时我已经映射了端口 .

我正在运行traefik(CentOS上的v1.5.4作为docker服务 . 我用来启动docker-compose.yml(docker stack deploy)看起来像这样

# use docker stack deploy to start a service running  traefik
version: '3.6'

services:
  proxy:
    image: traefik
    command: --api  --logLevel=DEBUG
    networks:
      - proxy
    ports:
      - "70:80"
      - "7443:443"
      - "7070:8080"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /home/frank/docker/traefik/traefik.toml:/etc/traefik/traefik.toml

在docker中映射端口的原因是,在我的开发系统中,我希望与现有的apache并行运行traefik .

在我的traefik.toml文件中,我尝试从端口80重定向到443 .

[entryPoints]

    # Port 80 (HTTP) is redirected to PORT 443 (HTTPS)
    [entryPoints.http]
       address = ":80"
       [entryPoints.http.redirect]
          entryPoint = "https"

    [entryPoints.https]
    address = ":443"

在添加HTTPS证书之前,我想测试重定向 . 那没起效 .

我向 http:/server.net:70/xxx 发送了一个请求 . 我得到了重定向 http:/server.net:443/xxx . 我需要或期望的是我将被重定向到 http:/server.net:7443/xxx . 因此我的请求不会重定向到我的应用程序

有没有办法让这种情况发生?我想我可以在toml文件中重定向到端口7443.但是,我不喜欢这个解决方案,从那时起我将在traefik配置中使用来自docker配置的信息 . 我宁愿让它们尽可能独立?