mod_rewrite

模块简介

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

基础配置

配置描述

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

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

配置示例

  1. [Basic]
  2. DataPath = mod_rewrite/rewrite.data

规则配置

配置描述

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

配置项描述
VersionString
配置文件版本
ConfigObject
各产品线的重写规则列表
Config{k}String
产品线名称
Config{v}Object
重写规则列表
Config{v}[]Object
重写规则
Config{v}[].CondString
规则条件, 语法详见Condition
Config{v}[].ActionObject
规则动作
Config{v}[].Action.CmdObject
规则动作名称
Config{v}[].Action.ParamObject
规则动作参数列表
Config{v}[].LastBoolean
当该项为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

配置示例

  1. {
  2. "Version": "20190101000000",
  3. "Config": {
  4. "example_product": [
  5. {
  6. "Cond": "req_path_prefix_in(\"/rewrite\", false)",
  7. "Actions": [
  8. {
  9. "Cmd": "PATH_PREFIX_ADD",
  10. "Params": [
  11. "/bfe/"
  12. ]
  13. }
  14. ],
  15. "Last": true
  16. }
  17. ]
  18. }
  19. }