Как я могу перенаправить несколько доменов на внешние, не используя бэкэнд в Traefik v1.x? - PullRequest
0 голосов
/ 09 июля 2019

Я хотел бы перенаправить с domain1.com, domain2.com, domain50.com на external.com, но без серверной части (только перенаправление 301).Я слышал, что это возможно с помощью некоторого регулярного выражения точки входа, но у меня есть много доменов, которые я хочу перенаправить на определенные.

Ссылки:

Ответы [ 2 ]

0 голосов
/ 24 июля 2019

Поскольку Traefik v1.x не поддерживает несколько перенаправлений без серверной части, я решил добавить этот хак, который частично решил мою проблему.

Я сделал в основном с помощью одного регулярного выражения перенаправления, используя один внешний интерфейс + поддельный внутренний для первой группы , а затем для второй только одно перенаправление на уровне точки входа, поскольку точка входа также поддерживает перенаправление на основе регулярного выражения.

Вот полный конфиг, который у меня работал:

[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
    entryPoint = "https"
    permanent = true

[entryPoints.https]
  address = ":443"
    [entryPoints.https.redirect]
      # Group 1
      regex = "https://(www.)?(d1.com|d2.com|d3.com)(.+)?"
      replacement = "https://www.x1.com$3"
      permanent = true
    [entryPoints.https.tls]

[file]
watch = true

[backends]
  [backends.fake]
    [backends.fake.servers.s1]
      url = "http://1.2.3.4"

[frontends]
  [frontends.r2]
    entryPoints = ["https"]
    backend = "fake"
    [frontends.r2.redirect]
      # Group 2
      regex = "https://(www.)?(d4.com|d5.com|d6.com)(.+)?"
      replacement = "https://www.x2.com$3"
      permanent = false

Полное обсуждение этого можно найти на официальном форуме Traefik: Перенаправление внешнего домена без внутреннего прокси с использованием Traefik v1.x

0 голосов
/ 11 июля 2019

Нашел это:

[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
      regex = "^http://localhost/(.*)"
      replacement = "http://mydomain/$1"
...