Traefik-重定向不能在没有斜杠的情况下与PathPrefixStrip一起使用

时间:2019-03-04 13:23:23

标签: traefik

我需要重定向特定的/path,我写这篇文章:

web1:
    image: httpd
    labels:
      - "traefik.backend=httpd"
      - "traefik.frontend.rule=Host:www.example.com"
      - "traefik.port=80"
web2:
    image: nginx
    labels:
      - "traefik.backend=nginx"
      - "traefik.frontend.rule=Host:www.foobar.com"
      - "traefik.port=80"   
app:
    image: custom/image
    labels:
      - "traefik.backend=app"
      - "traefik.frontend.rule=Host:www.example.com,www.foobar.com; PathPrefixStrip:/app"
      - "traefik.port=80"

当我进入http://www.example.com/apphttp://www.foobar.com/app时,我需要进入容器app,但是只有在URL末尾插入/时才能工作:

http://www.example.com/app不起作用

http://www.foobar.com/app不起作用

http://www.example.com/app/工作

http://www.foobar.com/app/工作

我已经有一个使用apache别名的应用程序版本,我想这不是该应用程序的问题

谢谢

1 个答案:

答案 0 :(得分:0)

我在这里找到了解决方法:https://github.com/containous/traefik/issues/563#issuecomment-421360934

labels:
  - "traefik.frontend.redirect.regex=^(.*)/path$"
  - "traefik.frontend.redirect.replacement=$1/path/"
  - "traefik.frontend.rule=PathPrefix:/path;ReplacePathRegex: ^/path/(.*) /$1"