## 簡介
該規則就是對返回的內容進行替換的一個功能,其作用和`http_sub_module` 、 `replace-filter-nginx-module`功能類似,不過這里是純`lua`實現的,該功能對性能的損耗還是比較多的,謹慎使用就可以。
## 入口

## 主界面
先看一下主界面吧

這里可以看到操作中有 上移、下移,等這樣條件規則組順序的功能,這就表示這里的規則,是有順序控制的,越在上面,越早執行!!!
調整好順序后,一定要 `應用` ,然后在 `保存`
* 規則開關
控制該模塊`replace_Mod`全局開關是否啟用,如果關閉,那么該頁面中配置的所有頻率控制規則都不會生效。
## 添加
添加一條內容替換規則,先看一下添加規則的界面

* des:對該條規則的人為描述,方便規則的管理和認知
* state:控制該條規則是否開啟
* hostname、uri
第一個參數:匹配的內容
第二個參數:匹配的方法(匹配符) 【參考匹配方式】
第三個參數:取反標記
* replace_list:內容替換相關配置(該值要求是一個數組)
子規則 第一個參數:查找的字符串
子規則 第二個參數:匹配的方法(等于、正則)
子規則 第三個參數:替換后的字符串
調用插件插件特殊:
子規則 第一個參數:插件的函數名稱
子規則 第二個參數:func(值固定)
子規則 第三個參數:傳遞給插件使用的參數(是一個table)
## 刪除
刪除對應規則模塊中對應規則id
## 編輯
編輯對應規則模塊中對應規則id, 具體看配置參考 添加規則 的說明
## 保存
保存對應規則組的配置從內存中保存到本地的json配置文件中,一般規則有變動后,需要保存,否則重啟后規則將會丟失(Slave會自動保存到本地磁盤)
## 實例講解
先看一個配置的示例

```
{
"des": "1-simple",
"state": "on",
"uri": [
"^/api/ip_dict$",
"jio"
],
"hostname": [
"localhost5460",
""
],
"replace_list": [
[
"deny",
"",
"denyFUCK"
],
[
"allow",
"",
"allowPASS"
],
[
"lzcaptcha\\?key='\\s*\\+ key",
"jio",
"lzcaptcha?keY='+key+'&keytoken=@token@'"
]
]
}
```
* host
匹配域名等于`localhost5460`
`localhost5460` 這個表示的是WAF服務器的web管理后臺的服務
* uri
匹配`uri`正則匹配 `^/api/ip_dict$`
* 替換規則
1. 返回內容中 deny 字符串替換為 denyFUCK
2. 返回內容中 allow 字符串替換為 allowPASS
3. 返回內容中 正則匹配 `lzcaptcha\?key='\s*\+ key` 把其內容替換為 `lzcaptcha?keY='+key+'&keytoken=@token@`
其中這里的@token@會被WAF動態的替換為一個由WAF生成的隨機字符串(方便后面進行驗證該字符串是否由WAF生成)
這個例子不太容易理解,后面我會寫一個簡單的html,這樣就可以直觀的看到其效果
- kcon 兵器譜
- 演示 1
- 演示 2
- 演示 3
- 演示 4
- 演示 5
- 前言
- 安裝
- 更新
- 登錄后臺
- 授權認證
- 集群配置
- 7層防護 -- 最佳實踐
- 匹配位置說明
- 匹配方式說明
- 規則匹配詳解
- 全局 - CDN規則
- 添加header頭配置
- 限速limit配置
- 緩存proxy_cache配置
- 清除緩存
- 全局 - 獲取真實IP配置
- 全局 - IP黑白名單
- 全局 - 域名方法配置(白名單)
- 全局 - 跳轉規則配置
- 全局 - 高級規則配置
- 全局 - 普通規則配置
- 全局 - 頻率規則配置
- 全局 - 內容替換規則
- 內容替換規則(插件使用)
- 全局 - 攔截信息配置
- 全局 - LOG規則配置
- 平臺配置
- 基本配置
- 高級配置
- 配置文件管理
- 4 層代理
- 轉發配置
- 插件管理
- 防護配置
- 網站管理
- 證書管理
- 域名管理
- 網站規則
- 插件管理
- 插件操作 --- 基本使用
- 插件操作 --- 手機號脫敏插件
- 歸檔
- 更新日志
- 視頻教程目錄