【问题标题】:Is it possible to use Ambassador prefix_regex and regex_rewrite at the same route mapping?是否可以在同一个路由映射中使用 Ambassador prefix_regex 和 regex_rewrite?
【发布时间】:2021-02-20 11:50:38
【问题描述】:

我正在尝试使用大使 prefix_regexregex_rewrite
我想要这两个路由前缀:

       /my/route/<something>
      /api/v1/my/route/<something>

将映射到: /my/route/&lt;something&gt;
这是我试图使用的:

apiVersion: ambassador/v2
kind: Mapping
prefix_regex: true
prefix: (/api/v1)?/my/route
regex_rewrite:
    pattern: "/api/v1/my/route/(.*)"
    substitution: "/my/route/\\1"

regex_rewrite 与常规prefix 一起使用可以按预期工作
prefix_regex 与常规rewrite 一起使用可以按预期工作
但我从特使那里收到了 404。

有什么想法吗?

我使用的是 Ambassador 1.7.0 版本

【问题讨论】:

    标签: kubernetes yaml mapping envoyproxy ambassador


    【解决方案1】:

    通过在前缀末尾添加 /.* 解决。

    prefix: (/api/v1)?/my/route/.*

    看起来 prefix_regex 会在前缀末尾自动添加$,这意味着我们需要指定映射的完整路径而不仅仅是前缀。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-18
      • 2023-03-06
      • 2017-01-27
      • 1970-01-01
      相关资源
      最近更新 更多