-
Notifications
You must be signed in to change notification settings - Fork 419
14 replace_Mod
star edited this page Jan 7, 2018
·
4 revisions
replace_Mod response内容替换模块
(对应配置文件:conf_json/replace_Mod.json)
该模块是整个访问控制规则的 第14步 用于配置返回内容的替换
[
{
"state": "on",
# 该条规则开关(on/off)
"uri": ["^/api/ip_dict$","jio"],
# uri规则;第一个参数:匹配内容,第二个:匹配方式,正则匹配
"hostname": ["101.200.122.200",""],
# host规则;第一个参数:匹配内容,第二个:匹配方式,字符串等于
"replace_list":
# 替换规则列表
[
["deny","","denyFUCK"],
# 第一条替换规则;第一个参数:需要替换的字符串;第二个:匹配方式,字符串等于;第三个:替换的字符串
["allow","","allowPASS"],
["lzcaptcha\\?key='\\s*\\+ key","jio","lzcaptcha?keY='+key+'&keytoken=@token@'"]
# 第三条替换规则;第三参数中的@token@表示动态生成的token
]
},
... # 下一条规则
]
上面的例子表示,规则启用,host为passport.game.com,url是正则匹配,匹配成功则进行返回内容替换
1:将"联合"替换为"联合FUCK"
2:将"登录"替换为"登录POSS"
3:通过正则进行匹配(ngx.re.gsub
)其中@token@表示动态替换为服务器生成的一个唯一随机字符串
state:表示是否启用规则
hostname:表示匹配的host
uri:表示匹配的uri
replace_list:表示替换列表,参数1 ==> 被替换内容;参数2 ==> 匹配模式(正则、字符串)如例子中前2个替换列表就是字符串匹配,使用""即可,不能没有;参数3 ==> 被替换的内容