跳到主要内容

参数

请参阅通用配置了解所有插件可用的配置选项。

  • uri

    string


    新的上游 URI 路径。值可以是内置变量

  • method

    string

    有效值:

    GETPOSTPUTHEADDELETEOPTIONSMKCOLCOPYMOVEPROPFINDLOCKUNLOCKPATCHTRACE


    重写请求使用的 HTTP 方法。

  • regex_uri

    array[string]


    用于匹配客户端请求 URI 路径并组成新上游 URI 路径的正则表达式。当同时配置 uriregex_uri 时,uri 具有更高优先级。

    请在扁平数组中提供一对或多对值。奇数位置的元素是匹配模式,偶数位置的元素是替换值。插件会按顺序计算各组值,并应用第一个匹配项。

    例如,使用 ["^/test/(.*)/(.*)", "/$1-$2", "^/other/(.*)", "/other"] 时,对 /test/user/agent 的请求会重写为 /user-agent,对 /other/hello 的请求会重写为 /other

  • set_ngx_uri

    boolean

    默认值:false


    该参数目前仅在 API7 企业版中可用,并将很快更新到 APISIX。

    如果为 false,ngx.var.uri 的值将保持不变,保留原始路由 uri。如果为 true,ngx.var.uri 将更新为 proxy-rewrite 中指定的 uri 值。

  • host

    string


    设置 Host 请求头。

  • headers

    object


    要执行的请求头动作。可以设置为动作动词 addremove 和/或 set 的对象;或由要 set 的请求头组成的对象。

    当配置多个动作动词时,动作按 addremoveset 的顺序执行。

    • add

      object


      追加到请求的请求头。如果请求中已存在该请求头,则将追加该请求头值。请求头值可以设置为常量、一个或多个内置变量,或使用 $1-$2-$3 等变量的 regex_uri 匹配结果。

      请求头值也可以是数组。每个值都会独立解析,并按数组顺序追加为单独的请求头行。自 API7 企业版 3.9.17 和 3.10.4 以及 APISIX 3.18.0 起引入。

    • set

      object


      设置到请求的请求头。如果请求中已存在该请求头,则将覆盖该请求头值。请求头值可以设置为常量、一个或多个内置变量,或使用 $1-$2-$3 等变量的 regex_uri 匹配结果。

      请求头值也可以是数组。每个值都会独立解析,且该数组会按数组顺序生成单独的请求头行,并替换任何现有值。自 API7 企业版 3.9.17 和 3.10.4 以及 APISIX 3.18.0 起引入。

      不应用于设置 Host

    • remove

      array[string]


      从请求中删除的请求头。

  • use_real_request_uri_unsafe

    boolean

    默认值:false


    如果为 true,则绕过 URI 规范化并允许完整的原始请求 URI。启用此选项被认为是不安全的。