Traefik 重定向配置
本指南将帮助您在 Coolify 中使用 Traefik 配置重定向功能。
标准应用程序和基于Docker Compose的应用程序/一键部署服务的配置略有不同。
标准应用程序
- 您需要为资源设置两个完整域名,例如:
coolify.io,www.coolify.io - 为资源添加唯一的中间件。
www -> 非www
bash
# 类似的行已经定义。
traefik.http.routers.<unique_router_name>.rule=Host(`www.coolify.io`) && PathPrefix(`/`)
# 您需要将中间件添加到路由器。
traefik.http.routers.<unique_router_name>.middlewares=example-middleware
# 如果有多个中间件,需要用逗号分隔。
# traefik.http.routers.<unique_router_name>.middlewares=gzip,example-middleware
#
traefik.http.middlewares.example-middleware.redirectregex.regex=^(http|https)://www\.(.+)
traefik.http.middlewares.example-middleware.redirectregex.replacement=${1}://${2}
traefik.http.middlewares.example-middleware.redirectregex.permanent=true非www -> www
bash
# 类似的行已经定义。
traefik.http.routers.<unique_router_name>.rule=Host(`coolify.io`) && PathPrefix(`/`)
# 您需要将中间件添加到路由器。
traefik.http.routers.<unique_router_name>.middlewares=example-middleware
# 如果有多个中间件,需要用逗号分隔。
# traefik.http.routers.<unique_router_name>.middlewares=gzip,example-middleware
#
traefik.http.middlewares.example-middleware.redirectregex.regex=^(http|https)://(?:www\.)?(.+)
traefik.http.middlewares.example-middleware.redirectregex.replacement=${1}://www.${2}
traefik.http.middlewares.example-middleware.redirectregex.permanent=true域名 -> 其他域名
bash
traefik.http.middlewares.redirect-otherdomain.redirectregex.regex=^(https?://)?source-domain\.com(.*)
traefik.http.middlewares.redirect-otherdomain.redirectregex.replacement=https://target-domain.com${2}
traefik.http.middlewares.redirect-otherdomain.redirectregex.permanent=true如果您还需要为目标域名生成SSL证书,另外添加一个路由器条目
bash
traefik.http.routers.redirect-otherdomain.middlewares=redirect-to-https,redirect-otherdomain
traefik.http.routers.redirect-otherdomain.rule=Host(`target-domain.com`) && PathPrefix(`/`)
traefik.http.routers.redirect-otherdomain.entryPoints=https
traefik.http.routers.redirect-otherdomain.tls.certresolver=letsencrypt
traefik.http.routers.redirect-otherdomain.tls=true基于Docker Compose的应用程序和一键部署服务
- 您需要为资源设置两个完整域名,例如:
coolify.io,www.coolify.io - 您只需要将中间件添加到路由器。
www -> 非www
bash
traefik.http.middlewares.example-middleware.redirectregex.regex=^(http|https)://www\.(.+)
traefik.http.middlewares.example-middleware.redirectregex.replacement=${1}://${2}
traefik.http.middlewares.example-middleware.redirectregex.permanent=true非www -> www
bash
traefik.http.middlewares.example-middleware.redirectregex.regex=^(http|https)://(?:www\.)?(.+)
traefik.http.middlewares.example-middleware.redirectregex.replacement=${1}://www.${2}
traefik.http.middlewares.example-middleware.redirectregex.permanent=true调试
您可以通过检查Docker目标容器来确认Traefik设置是否已正确应用。
找到您的Docker容器ID
bash
docker ps检查容器标签
bash
docker inspect <container-id>您还可以通过运行以下命令检查traefik容器日志
bash
docker logs -f coolify-proxy