使用Traefik将无效的子域重定向到特定的URL

时间:2018-11-27 17:38:16

标签: docker traefik

我想使用traefik和Docker将无效的URL重定向到404错误

示例: https://sub1.domain.com是在traefik中引用的有效doamin,因此没有任何反应 https://invalid.domain.com在Traefik配置中不存在,因此它将重定向到https://error.domain.com

我已经搜索了官方文档,发现的唯一一件事是关于重定向,但是我不知道如何使用它们来实现我的目的。

1 个答案:

答案 0 :(得分:0)

您应该可以通过指定重定向和替换来做到这一点。您还需要确保主机规则匹配任何子域。这是docker-compose的配置:

services:
  traefik:
    # ...existing config
  sub1:
    # ...existing config
  error:
    # ...existing config
    labels:
      # Match all subdomains
      - traefik.frontend.rule=HostRegexp:{subdomain:[a-z]+}.domain.com
      - traefik.frontend.redirect.regex=^https?://(.*).domain.com
      - traefik.frontend.redirect.replacement=https://error.domain.com
      # Set priority to low number so matches after other rules
      - traefik.frontend.priority=1

如果您不介意域名更改,而只是想显示错误,因为您不需要traefik.frontend.redirect标签,则更容易