Johannes Gesenhues
Johannes Gesenhues

Reputation: 71

Traefik frontend redirects doesn't work

Hey i am trying catch all request to an Subdomain, with no matching rool and redirect them to https://localhost:8000 without subdomain and suburl. But there is no redirect, i just get the response from the backend.

[file]
  [frontends]
    [frontends.homeRedirect]
      entryPoints = ["https"]
      priority = 1
      backend = "homeRedirect"
      [frontends.homeRedirect.routes.everything]
        rule = "PathPrefix:/"
      [frontends.homeRedirect.headers]
        SSLRedirect = true
      [frontends.homeRedirect.redirect]
        regex = "(.*)"
        replacement = "https://localhost:8000"
  [backends]
      [backends.homeRedirect]
        [backends.homeRedirect.servers]
          [backends.homeRedirect.servers.server0]
            url = "http://frontend:80"

Is there something wrong with my file?

Upvotes: 0

Views: 2372

Answers (1)

ldez
ldez

Reputation: 3128

In this case, a redirect on the entry point is more appropriate:

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

https://docs.traefik.io/v1.5/configuration/entrypoints/#rewriting-url

localhost inside the Traefik container is the container not the real machine.

Upvotes: 1

Related Questions