Traefik全局配置HTTP跳转HTTPS不生效问题求助
问题排查&修复方案
你配置的入口点全局重定向语法本身没有问题,按以下步骤逐一排查即可:
- 先确认配置修改后已重启Traefik容器,执行命令:
静态配置修改后必须重启容器才会生效,很多人会忽略这一步导致配置不加载。docker restart traefik - 排除浏览器缓存干扰,用无痕模式访问或者直接用curl命令测试跳转效果:
正常情况下返回头会包含curl -I http://traefik.example.com # 换成你自己的域名301 Moved Permanently状态码,以及Location: https://traefik.example.com的跳转地址。 - 检查acme.json文件权限是否正确,该文件权限必须为600,否则Let's Encrypt证书会申请失败,https路由无法正常加载,也会导致跳转异常:
修改完成后再重启一次Traefik容器即可。chmod 600 ./data/acme.json - 确认你访问的是配置了对应Host规则的域名,直接访问服务器IP不会触发跳转,因为没有匹配的路由规则。
- 检查其他服务的路由配置,不要单独给路由指定仅绑定http入口点,否则全局跳转规则不会作用在该路由上。
如果以上步骤都试过还是不生效,可以查看Traefik容器的日志排查具体错误:
docker logs traefik
内容的提问来源于stack exchange,提问作者nickwaze
相关产品推荐
相关产品推荐

