我希望在TLS环境中将所有请求永久地重定向到example.com和www.example.com到blog.example.com。
我的当前配置:
traefik.toml
[entryPoints]
[entryPoints.web]
address = ":80"
[entryPoints.web.http.redirections.entryPoint]
to = "websecure"
scheme = "https"
[entryPoints.websecure]
address = ":443"
[providers.docker]
exposedbydefault = false
watch = true
network = "web"
[providers.file]
filename = "traefik_dynamic.toml"
[certificatesResolvers.lets-encrypt.acme]
email = "mymail@example.com"
storage = "/letsencrypt/acme.json"
[certificatesResolvers.lets-encrypt.acme.dnsChallenge]
provider = "myprovider"traefik_dynamic.toml
[http.middlewares]
[http.middlewares.goToBlog.redirectregex]
regex = "^https://(.*)example.com/(.*)"
replacement = "https://blog.example.com/$${2}"
permanent = true
[http.routers]
[http.routers.gotoblog]
rule = "Host(`example.com`) || Host(`www.example.com`)"
entrypoints = ["websecure"]
middlewares = ["goToBlog"]
service = "noop@internal"
[http.routers.gotoblog.tls]
certResolver = "lets-encrypt"当我试图访问example.com时,它会给出一个SSL错误。包括blog.example.com在内的所有其他端点都在工作。我做错了什么?
发布于 2021-02-28 11:07:27
好吧,显然这和我的重定向配置无关。看上去就像在码头上搭便车,和ACME certificates timeout with traefik很相似。就等了一天,一切都如期而至。只有两个小的更新来更正重定向配置。也许有一个更优雅的解决方案。
traefik_dynamic.toml
[http.middlewares]
[http.middlewares.goToBlog.redirectregex]
regex = "^https://(.*)example.com/(.*)"
replacement = "https://blog.example.com/${2}" # no double $$
permanent = true
[http.routers]
[http.routers.gotoblog]
rule = "Host(`example.com`, `www.example.com`)" # just an array of domains is fine, too
entrypoints = ["websecure"]
middlewares = ["goToBlog"]
service = "noop@internal"
[http.routers.gotoblog.tls]
certResolver = "lets-encrypt"https://stackoverflow.com/questions/66400248
复制相似问题