跳转至

mod_rewrite

模块简介

mod_rewrite根据自定义的条件,修改请求的URI。

基础配置

配置描述

模块配置文件: conf/mod_rewrite/mod_rewrite.conf

配置项 描述
Basic.DataPath String
规则配置文件路径

配置示例

[Basic]
DataPath = mod_rewrite/rewrite.data

规则配置

配置描述

规则配置文件: conf/mod_rewrite/rewrite.data

配置项 描述
Version String
配置文件版本
Config Object
各产品线的重写规则列表
Config{k} String
产品线名称
Config{v} Object
重写规则列表
Config{v}[] Object
重写规则
Config{v}[].Cond String
规则条件, 语法详见Condition
Config{v}[].Action Object
规则动作
Config{v}[].Action.Cmd Object
规则动作名称
Config{v}[].Action.Param Object
规则动作参数列表
Config{v}[].Last Boolean
当该项为true时,命中某条规则后,不再向后匹配

模块动作

动作 描述
HOST_SET_FROM_PATH_PREFIX 根据path前缀设置host
HOST_SET 设置host
HOST_SUFFIX_REPLACE 替换域名后缀
PATH_SET 设置path
PATH_PREFIX_ADD 增加path前缀
PATH_PREFIX_TRIM 删除path前缀
QUERY_ADD 增加query
QUERY_DEL 删除query
QUERY_RENAME 重命名query
QUERY_DEL_ALL_EXCEPT 删除除指定key外的所有query

配置示例

{
  "Version": "20190101000000",
  "Config": {
      "example_product": [
          {
              "Cond": "req_path_prefix_in(\"/rewrite\", false)",
              "Actions": [
                  {
                      "Cmd": "PATH_PREFIX_ADD",
                      "Params": [
                          "/bfe/"
                      ]
                  }
              ],
              "Last": true
          }
      ]
  }
}