You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GCP负载均衡器中移除Cloud Functions/Run的路径无关前缀?

解决GCP负载均衡转发路径前缀移除问题(Cloud Functions & Cloud Run)

针对Cloud Functions的配置调整

你当前的URL掩码规则仅移除了/functions前缀,导致函数收到的路径包含/cf1这类路由标识。要实现仅保留业务路径的需求,需为每个Cloud Function单独配置路径匹配与重写规则:

  1. 在GCP负载均衡的URL映射中,为每个函数创建独立的路径规则:
    • 针对cf1:
      • 匹配路径:/functions/cf1/{allPaths=**}
      • 路径重写:设置为/{allPaths}
      • 绑定后端服务:选择cf1对应的Cloud Functions后端
    • 针对cf2:
      • 匹配路径:/functions/cf2/{allPaths=**}
      • 路径重写:设置为/{allPaths}
      • 绑定后端服务:选择cf2对应的Cloud Functions后端
    • 针对cf3:
      • 匹配路径:/functions/cf3/{allPaths=**}
      • 路径重写:设置为/{allPaths}
      • 绑定后端服务:选择cf3对应的Cloud Functions后端

配置完成后,当请求https://mydoma.in/functions/cf1/one/two时,负载均衡会将重写后的路径/one/two转发给cf1,函数收到的就是纯业务路径。

针对Cloud Run的配置调整

Cloud Run的实现逻辑与Cloud Functions完全一致,只需将后端服务替换为对应的Cloud Run服务即可:

  1. 在负载均衡的URL映射中添加路径规则(可根据实际URL结构调整):
    • 例如针对名为cr1的Cloud Run服务:
      • 匹配路径:/services/cr1/{allPaths=**}
      • 路径重写:设置为/{allPaths}
      • 绑定后端服务:选择cr1对应的Cloud Run后端服务

这样配置后,Cloud Run服务收到的请求路径也会自动移除路由标识前缀,仅保留业务相关部分。

注意:如果你的Cloud Run服务使用自定义域名原生路径映射,也可直接在Cloud Run控制台的自定义域名设置中配置前缀移除规则,但通过负载均衡统一管理会更便于维护。

内容的提问来源于stack exchange,提问作者Vojtěch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 16:25:18