<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 簡介 該規則就是對返回的內容進行替換的一個功能,其作用和`http_sub_module` 、 `replace-filter-nginx-module`功能類似,不過這里是純`lua`實現的,該功能對性能的損耗還是比較多的,謹慎使用就可以。 ## 入口 ![](https://img.kancloud.cn/ce/6d/ce6d5683cfd647e171150fcd195bc741_934x920.png) ## 主界面 先看一下主界面吧 ![](https://img.kancloud.cn/21/76/2176a9a4c8cc666c5281eabeacbb5fe0_984x437.png) 這里可以看到操作中有 上移、下移,等這樣條件規則組順序的功能,這就表示這里的規則,是有順序控制的,越在上面,越早執行!!! 調整好順序后,一定要 `應用` ,然后在 `保存` * 規則開關 控制該模塊`replace_Mod`全局開關是否啟用,如果關閉,那么該頁面中配置的所有頻率控制規則都不會生效。 ## 添加 添加一條內容替換規則,先看一下添加規則的界面 ![](https://img.kancloud.cn/15/54/1554cc83455520b4f972b04a59c83fb5_743x450.png) * des:對該條規則的人為描述,方便規則的管理和認知 * state:控制該條規則是否開啟 * hostname、uri 第一個參數:匹配的內容 第二個參數:匹配的方法(匹配符) 【參考匹配方式】 第三個參數:取反標記 * replace_list:內容替換相關配置(該值要求是一個數組) 子規則 第一個參數:查找的字符串 子規則 第二個參數:匹配的方法(等于、正則) 子規則 第三個參數:替換后的字符串 調用插件插件特殊: 子規則 第一個參數:插件的函數名稱 子規則 第二個參數:func(值固定) 子規則 第三個參數:傳遞給插件使用的參數(是一個table) ## 刪除 刪除對應規則模塊中對應規則id ## 編輯 編輯對應規則模塊中對應規則id, 具體看配置參考 添加規則 的說明 ## 保存 保存對應規則組的配置從內存中保存到本地的json配置文件中,一般規則有變動后,需要保存,否則重啟后規則將會丟失(Slave會自動保存到本地磁盤) ## 實例講解 先看一個配置的示例 ![](https://img.kancloud.cn/d2/03/d2036e94835c32fefd9351796c853354_743x522.png) ``` { "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,這樣就可以直觀的看到其效果
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看