别再硬改代码了!Envoy Gateway 这个功能让路由无缝对接
实战:重写URL前缀路径
在微服务落地和API网关部署过程中,一个绕不开的经典场景就是路径适配。你肯定遇到过:前端或是客户端发出的请求是一个路径,但后端服务实际监听的却是另一个。比如,客户端发起的是`/api/v1/users`的请求,而后端只有`/users`这个接口在等着。这种前后端路径不匹配,往往需要我们在网关层做一次“翻译”,也就是URL路径重写。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
Envoy Gateway作为下一代Kubernetes原生网关,基于强大的Envoy Proxy构建,提供了非常灵活和精准的路由与重写能力。接下来,我们就用一个具体的例子,看看如何配置它的Rewrite URL Prefix Path功能。

先看第一个实战场景,需求很明确:
- 客户端请求: `https://example.local/api/v1/who`
- 后端服务实际路径: `/who`
- 目标: 让API网关自动完成转化,把客户端请求中包含的`/api/v1/who`这个前缀,精准地重写成`/who`,然后转发给后端。
要实现这个效果,核心是配置Envoy Gateway的HTTPRoute资源,并使用URLRewrite过滤器。具体配置示例如下:
cat <<'EOF' | kubectl apply -f -
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: simple
spec:
hostnames:
- example.local
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: simple-gw
rules:
- matches:
- path:
type: PathPrefix
value: /api/v1/who # 浏览器访问路径
filters:
- type: URLRewrite
urlRewrite:
path:
type: ReplacePrefixMatch
replacePrefixMatch: /who # 业务收到访问路径
backendRefs:
- name: simple
port: 80
EOF
配置生效后,如何验证服务按预期工作了呢?直接看结果:

实战:重写URL完整路径
刚才的例子是针对路径前缀的替换,但有时候,我们需要更彻底的改写,比如替换掉整个路径。这在统一健康检查或就绪检查接口时特别常见。
来看另一个场景:
- 客户端请求: `/status/healthz` 和 `/status/readyz`
- 后端服务实际路径: `/ping`
- 目标: 无论客户端请求的是`/status/healthz`还是`/status/readyz`,最终都统一被重写为`/ping`再转发至后端。
这里的关键在于,不再只是替换匹配的前缀,而是替换掉整个匹配到的路径。配置上需要使用`ReplaceFullPath`类型。
cat <<'EOF' | kubectl apply -f -
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: simple
spec:
hostnames:
- example.local
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: simple-gw
rules:
- matches:
- path:
type: PathPrefix
value: /status # 浏览器访问路径
filters:
- type: URLRewrite
urlRewrite:
path:
type: ReplaceFullPath
replaceFullPath: /ping # 业务收到访问路径
backendRefs:
- name: simple
port: 80
EOF
配置完成后,验证一下重写效果:

实战:重写主机名
除了改写路径,主机名(Host)的重写在多租户SaaS应用中同样不可或缺。这类应用的典型做法是使用不同子域名来区分租户,例如:
- `tenant1.simple.com`
- `tenant2.simple.com`
应用服务需要根据请求的Host头来判断当前是哪个租户在访问,但最终所有租户的请求都需要落到`simple.com`这个主域名对应的业务服务上。我们当然不想在后端服务里维护一堆租户子域名,这时在网关层重写Host头就成了解法。
使用Envoy Gateway的URLRewrite过滤器,可以轻松实现这个需求。
cat <<'EOF' | kubectl apply -f -
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: simple
spec:
hostnames:
- "*.simple.com"
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: simple-gw
rules:
- matches:
- path:
type: PathPrefix
value: /
filters:
- type: URLRewrite
urlRewrite:
hostname: www.simple.com
backendRefs:
- name: simple
port: 80
EOF
来看一下验证结果,可以看到Host头已经按预期被改写了:

结语
通过Envoy Gateway的URLRewrite过滤器,我们能够非常从容地实现路径前缀乃至整个主机名的重写。这种能力,本质上是在解耦客户端请求的格式与后端服务接口的设计,让前后端可以各自独立演化。对于构建灵活、可维护的微服务集成架构来说,这无疑是一个简化流程、提升效率的关键特性。
热门专题
热门推荐
Lemonaid是什么 如果你正为音乐创作寻找得力助手,那么Lemonaid很可能就是答案。它是一款专门面向专业音乐人打造的AI音乐生成工具,核心能力在于自主生成包含完整旋律、和声与节奏的乐曲。无论是想要一段氛围感十足的背景音乐,还是为具体场景定制配乐,它都能提供高度逼真且质量上乘的作品。工具提供了
苹果也要出折叠屏,传闻已经有几年了,从目前供应链、分析师与知名爆料者释放的信息来看,这款与市面大折都不一样的阔折叠似乎已经蓄势待发,大概率今年下半年就要正式面市。今天我们就来为大家汇总一波,没准儿就有你想知道的消息。 关于苹果折叠屏手机的传闻,已经流传了好几年。如今,综合供应链、分析师以及各路知名爆
《刺客信条:黑旗重制版》官宣之际,这款新海盗游戏为何能抢先赢得玩家口碑? 当游戏界的焦点都集中在《刺客信条:黑旗重制版》的正式公布时,一款名为《风启之旅》(Windrose)的开放世界海盗生存建造游戏,却凭借其过硬的品质与独特的玩法融合,悄然在玩家社区中掀起热议。这款由乌兹别克斯坦团队Kraken
产品介绍 提到云端智能视频创作,腾讯智影是一个绕不开的名字。这款由腾讯推出的平台,本质上是一个一站式的在线视频工厂,集成了从素材挖掘、剪辑、渲染到最终发布的全链路功能,旨在为用户提供全方位的视频创作解决方案。更吸引人的是,它不仅免费开放,还深度整合了多项前沿AI技术,目标很明确:让视频化表达这件事,
《王者荣耀世界》线下活动风波:合影互动引争议,职业素养与网络舆论深度探讨 近日,《王者荣耀世界》的一场线下玩家见面会,因台上一次短暂的合影互动,意外成为全网热议的焦点。活动中,一位男粉丝上台与角色扮演者(Coser)合影时,主动做出比心手势以示友好,却未得到身旁Coser的任何回应。男生举着手势在原





