首页 > 解决方案 > 使用 traefik 重写内容 URL

问题描述

我们正在使用 traefik 反向代理我们的微服务环境,在 staging 和 prod 的 kubernetes 上运行,并在本地进行 docker-compose。我们正在尝试将特定 URL 的请求代理到特定微服务,例如,“订单”微服务在我们的系统中为该关注点提供 API 和 UI。我们的目标是让我们的服务与它们所服务的 URL 无关,例如,“订单”微服务在 上提供服务/,但 traefik 代理来自http://api.me.com/orders/{id}a PathPrefixStripoforders到 eg的请求http://orders.svc.kubernetes.local/{id}。我正在尝试解决服务需要知道它在哪个 URL 上提供服务的问题,以便它写出的 URL 包含 中指定的值PathPrefix,但我不喜欢重复PathPrefix跨traefik和应用程序。这是在这种情况下“必须完成”的事情吗,traefik 是否能够重写响应中的 URL,或者是否有其他一些我们可以/应该应用的技术来实现这一点?

注意:我已经阅读了 三个 类似的问题,但在那里没有找到答案。

标签: traefik

解决方案


这个问题已经2岁了。不确定当时使用的是哪个版本的 traefik。

但从 Traefik 1.3 开始,去除的前缀路径将在 X-Forwarded-Prefix 标头中可用。来源:https ://docs.traefik.io/v1.4/basics/


推荐阅读