简介
根据自定义条件,修改请求或响应的头部。
配置
模块配置文件
conf/mod_header/mod_header.conf
[basic] DataPath = ../conf/mod_header/header_rule.data
规则配置文件
conf/mod_header/header_rule.data
| 配置项 |
类型 |
描述 |
| Version |
String |
配置文件版本 |
| Config |
Map<String, Array<HeaderRule>> |
各产品线的规则配置 |
| 配置项 |
类型 |
描述 |
| Cond |
String |
条件原语 |
| Actions |
Array<Action> |
执行动作列表 |
Action
| 配置项 |
类型 |
描述 |
| Cmd |
String |
动作名称,详见下表 |
| Params |
Array<String> |
动作参数列表 |
内置动作说明
| 动作名称 |
描述 |
参数列表说明 |
| REQ_HEADER_SET |
设置请求头 |
HeaderName, HeaderValue |
| REQ_HEADER_ADD |
添加请求头 |
HeaderName, HeaderValue |
| REQ_HEADER_DEL |
删除请求头 |
HeaderName |
| RSP_HEADER_SET |
设置响应头 |
HeaderName, HeaderValue |
| RSP_HEADER_ADD |
添加响应头 |
HeaderName, HeaderValue |
| RSP_HEADER_DEL |
删除响应头 |
HeaderName |
内置变量说明
可以通过 %variable 使用变量,参见下文示例
| 变量名 |
描述 |
| bfe_client_ip |
客户端IP |
| bfe_client_port |
客户端端口 |
| bfe_request_host |
请求Host |
| bfe_session_id |
会话ID |
| bfe_log_id |
请求ID |
| bfe_cip |
客户端IP (CIP) |
| bfe_vip |
服务端IP (VIP) |
| bfe_server_name |
添加请求头 |
| bfe_cluster |
目的集群 |
| bfe_backend_info |
后端信息 |
| bfe_ssl_resume |
是否tls/ssl会话复用 |
| bfe_ssl_cipher |
tls/ssl加密套件 |
| bfe_ssl_version |
tls/ssl协议版本 |
| bfe_protocol |
访问协议 |
| client_cert_serial_number |
客户端证书序列号 |
| client_cert_subject_title |
客户端证书Subject title |
示例
{ "Version": "20190101000000", "Config": { "example_product": [ { "cond": "req_path_prefix_in(\"/header\", false)", "actions": [ { "cmd": "REQ_HEADER_SET", "params": [ "X-Bfe-Log-Id", "%bfe_log_id" ] }, { "cmd": "REQ_HEADER_SET", "params": [ "X-Bfe-Vip", "%bfe_vip" ] }, { "cmd": "RSP_HEADER_SET", "params": [ "X-Proxied-By", "bfe" ] } ], "last": true } ] } }