當需精確防護特定攻擊(如惡意調用、惡意請求、高頻掃描)時,可使用自訂規則,通過靈活的匹配條件和規則動作,構建個人化防護策略。
關鍵概念
自訂規則:Web核心防護中的防護模組之一。啟用此模組前必須建立防護模板,系統支援建立多個防護模板。
防護模板:防護模板是防護規則的集合,用於定義具體的規則內容和作用範圍。其由以下三部分組成:模板類型、防護規則、生效對象。
模板類型:防護模板建立時需指定類型,且建立後不可更改。模板類型分為以下兩種:
模板類型
說明
適用情境
預設防護模板
模板建立時,預設對所有防護對象和對象組生效,後續新增的對象也自動生效。
支援手動將特定對象排除(設定為“未生效”)。
在自訂規則模組下,僅能建立一個預設防護模板。
部署通用的、需全域執行的防護規則。
自訂防護模板
必須手動指定其生效的防護對象或對象組。
針對特定業務(如登入、支付介面)部署精細化的防護規則。
防護規則:定義具體的檢測邏輯和響應措施。一個防護模板可包含多條防護規則,每條規則由以下三部分組成:
匹配條件:定義檢測的請求特徵(如請求路徑、用戶端 IP 位址等)。
防護類型:支援三種檢測維度,分別為存取控制、頻率控制與插件执行。
規則動作:定義命中規則後的處置措施,規則動作的優先順序從高到低依次為:攔截、嚴格滑塊、滑塊、JS 驗證、觀察。
說明當一個請求同時命中同一防護模組中的多條規則,且這些規則的規則動作相同時,則最終匹配到的規則是隨機生效的。
生效對象:指定防護模板的應用目標。通過生效對象設定,將防護規則應用到指定的防護對象或防護對象組。一個防護對象或對象組可以關聯多個防護模板。
防護對象:每個接入 WAF 的網域名稱或雲產品執行個體,系統會為其自動建立一個防護對象。
防護對象組:可將多個防護對象加入一個防護對象組,以便集中管理。
操作步驟
執行以下步驟前,請確保已存在防護對象(已將Web業務接入WAF),若尚未將業務接入,請參見接入概述。
登入Web Application Firewall3.0控制台。在頂部功能表列,選擇WAF執行個體的資源群組和地區(中國內地、非中國內地),在左側導覽列,選擇。
步驟一:配置防護模板類型
在Web 核心防護頁面下方自訂規則地區,單擊建立模板。在建立模板面板,完成以下配置。
模板名稱:為該模板設定一個名稱。
是否設定為預設範本:自訂規則模組僅能設定一個預設範本,且僅能在建立模板時設定。
是:無需設定生效對象,模板建立時,預設對所有防護對象和對象組生效,後續新增的對象也自動生效。支援手動將特定對象排除(設定為“未生效”)。
否:需要設定生效對象,手動指定其生效的防護對象或對象組。
步驟二:在防護模板中添加防護規則
在規則配置地區,單擊建立規則,完成以下配置。
規則名稱:為該規則設定一個名稱。
匹配條件:設定該規則要匹配的請求特徵。通過單擊新增條件添加一個條件。每個條件由匹配欄位、邏輯符和匹配內容組成。配置樣本如下:
說明當規則包含多個條件時,請求必須同時滿足所有條件(即邏輯與關係)才能命中該規則。不支援將條件間的關係配置為邏輯或(OR)。若需攔截滿足任一關鍵詞或特徵的請求(例如包含關鍵詞A或關鍵詞B),請為每個條件分別建立獨立的防護規則。關於匹配欄位和邏輯符的詳細說明,請參見匹配條件說明。
匹配欄位
邏輯符
匹配內容
說明
URI Path
包含
/login.php當請求的路徑包含
/login.php時,則請求命中該規則。IP
屬於
192.1.XX.XX當用戶端IP為
192.1.XX.XX時,則請求命中該規則。說明複雜匹配規則配置說明
1. 多值匹配邏輯與限制
當需對多個介面應用相同規則時,可使用支援多值的邏輯符(如“包含多值之一”、“等於多值之一”、“不包含任一值”、“不等於任一值”)。配置要求如下:分隔字元:多個匹配值須使用英文逗號(,)分隔,系統將按逗號拆分並獨立處理。
數量與去重:最多支援輸入 50 個值,且不允許存在重複值。
2. 特殊字元處理方案
若匹配內容本身包含逗號(例如部分 User-Agent 字串),系統將誤將其識別為多值分隔字元,導致匹配失敗。針對此情況,請勿使用多值邏輯符,建議採用以下替代方案:正則匹配:使用Regex匹配,將逗號作為一般字元處理。
單條規則:針對該特定字串單獨建立規則,使用單值匹配邏輯符。
3. Regex應用樣本
匹配特定版本號碼範圍:若需匹配 Chrome 瀏覽器 100 至 200 之間的版本號碼,將匹配欄位設為
User-Agent,邏輯符設為“正則匹配”,匹配內容填寫Chrome/(1[0-9]{2}|200)\.。攔截多重 URL 編碼:若需攔截經多重 URL 編碼的請求(如
%被編碼為\x25),將邏輯符設為“正則匹配”,匹配內容填寫\x25.*\x25。
4. 生產環境配置建議
在生產環境配置Regex等複雜匹配條件時,建議先通過觀察動作或灰階測實驗證匹配效果,確認無誤後再全量生效。防護類型:支援存取控制、頻率控制與插件执行三種類型。
存取控制:適用於對特定類型的請求執行精確管控的情境。
頻率控制:適用於基於訪問頻率的情境(如防刷、防暴力破解)。僅訂用帳戶企業版、旗艦版和隨用隨付版支援此功能。
插件执行:適用於需通過自訂 Lua 指令碼實現複雜商務邏輯的個人化安全管控情境,請優先配置擴充外掛程式。
存取控制
配置存取控制規則,對符合特定條件的單次請求執行指定操作。
頻率控制
配置頻率控制規則,限制用戶端的過度訪問。
頻率檢測條件:當單個統計對象在指定的統計時間長度(秒)內命中規則的次數超過設定的閾值(次)時,觸發黑名單處置。
配置項
說明
統計對象
選擇請求頻率的統計對象。可選項:
IP:統計同一個 IP 發起請求的頻率。若 WAF 前存在七層代理(如 CDN),請確保資產在接入WAF時將WAF前是否有七層代理(高防/CDN等)配置項設定為是。若未正確配置,WAF 將無法擷取真實的用戶端 IP,進而導致基於 IP 的規則失效。
自訂header:基於自訂要求標頭(如
Referer)的值進行分組,統計在指定時間段內,每組相同要求標頭值所對應的請求頻率。自訂參數:統計URL中包含指定參數的請求頻率。例如,若參數為
user_id,WAF將統計具有相同user_id值的請求頻率。自訂cookie:統計在指定時間段內,HTTP請求中包含特定Cookie的頻率。例如,當自訂Cookie名稱為 User 時,將統計在該時間段內每個 User 值的出現次數。
Session:WAF通過在響應中設定名為
acw_tc的Cookie來建立會話標識,並基於該Cookie的值統計用戶端請求頻率。账号:統計同一個帳號發起請求的頻率。需要在防護對象版面設定账号提取配置後,才能配置此項,詳細資料,請參見配置防護對象和防護對象組。
統計時間長度(秒)
設定統計周期。單位:秒。
閾值(次)
設定在統計時間長度(秒)內,允許統計對象命中匹配條件的最大次數。
響應碼檢測條件:當響應碼的響應數量或比例(%)超過設定的閾值時,觸發黑名單處置。啟用響應碼檢測後,統計對象需同時滿足頻率檢測條件和響應碼特徵條件,才會觸發黑名單處置。
配置項
說明
響應碼
設定需要統計的響應碼。
數量
設定在統計時間長度內,允許指定的響應碼在請求響應中出現的最大次數。
比例(%)
設定在統計時間長度內,允許指定的響應碼在請求響應中的最大佔比。
黑名單處置條件:將命中上述檢測條件的統計對象加入黑名單,在黑名單逾時時間內,對來自該對象黑名單生效範圍內的請求執行規則動作中定義的處置。
配置項
說明
黑名單生效範圍
設定黑名單處置的生效範圍。可選值:
僅作用於當前規則的匹配條件:表示只處置滿足當前規則匹配條件的請求。
作用於整個防護對象:表示對該統計對象(如IP)發起的,訪問當前防護對象的所有請求執行處置動作。
黑名單逾時時間
設定黑名單處置的生效時間長度。單位:秒。取值範圍:60~86400。
外掛程式執行
從已配置的擴充外掛程式規則中進行選擇,實現個人化的安全管控。
說明外掛程式執行規則僅支援攔截與觀察兩種規則動作。
規則動作:選擇當請求命中該規則時,要執行的防護動作。
配置項
說明
JS驗證
WAF向用戶端返回一段JavaScript驗證代碼,標準瀏覽器將自動執行該代碼。若用戶端正常執行完成,則WAF在一段時間(預設30分鐘)內允許存取該用戶端的所有請求,否則攔截請求。
攔截
攔截命中規則的請求,並向發起請求的用戶端返回攔截響應頁面。
說明WAF預設使用統一的攔截響應頁面,也可以通過自訂響應功能,自訂攔截響應頁面。
觀察
不攔截命中規則的請求,僅通過日誌記錄請求命中的情況。在試運行規則時,可以先通過觀察模式分析WAF日誌,以確認未產生誤攔截,再將其調整為其他規則動作。
滑塊
WAF向用戶端返回滑動驗證頁面。若用戶端成功完成滑動驗證,則WAF在一段時間(預設30分鐘)內允許存取該用戶端的所有請求,否則攔截請求。
說明對於隨用隨付版WAF,此類規則動作將產生額外費用,具體請參見隨用隨付計費說明。
嚴格滑塊
WAF向用戶端返回滑動驗證頁面。若用戶端成功完成滑動驗證,則允許存取該請求;否則攔截請求。在此模式下,用戶端每次命中該規則的請求均需進行滑動驗證。
說明對於隨用隨付版WAF,此類規則動作將產生額外費用,具體請參見隨用隨付計費說明。
說明僅隨用隨付執行個體以及訂用帳戶企業版和旗艦版執行個體支援滑塊驗證。
JS驗證或滑塊驗證僅適用於同步請求。對於XMLHttpRequest、Fetch方法等非同步請求,必須注入Web SDK,否則無法正常運行。具體操作,請參見Bot管理的JS校正和滑塊驗證功能。
啟用JS驗證或滑塊後,用戶端通過驗證時,WAF將在回應標頭中通過Set-Cookie 設定名為
acw_sc__v2(JS驗證)或acw_sc__v3(滑塊驗證)的 Cookie。用戶端在後續請求中會在 Cookie 頭中攜帶該標識。
進階設定(可選):僅訂用帳戶企業版、旗艦版和隨用隨付版支援如下進階功能。
配置項
說明
規則灰階
配置規則針對不同維度對象的生效比例。
開啟規則灰階後,還需要設定維度和灰階比例。維度包括:IP、自訂Header、自訂參數、自訂Cookie、Session。
說明規則灰階根據配置的維度生效,而非對請求按比例隨機生效規則。例如,當維度為IP且灰階比例為10%時,WAF將選擇約10%的IP地址;被選中的IP地址,其所有請求均應用該規則,而非對所有請求按10%的比例隨機應用。
生效模式
永久生效(預設):防護模板開啟時,規則永久生效。
按時間段生效:防護規則僅在指定的一段時間內生效。
按周期生效:防護規則僅在指定的時間周期內生效。
步驟三:設定防護模板生效對象
在生效對象地區,選擇要應用於該模板的防護對象和防護對象組。
模板的生效方式取決於在步驟一的配置:
設定為預設防護模板:無需設定生效對象,模板建立時,預設對所有防護對象和對象組生效,後續新增的對象也自動生效。支援手動將特定對象排除(設定為“未生效”)。
未設為預設防護模板:需要手動設定生效的防護對象和防護對象組。
模板建立時與建立完成後,均支援手動調整防護對象或防護對象組生效狀態。
防護規則配置樣本
以下配置樣本僅供參考。在生產環境部署前,您必須根據實際業務流量和攻擊特徵進行調整。直接複製並應用以下樣本可能導致正常業務中斷或防護無效。
限制管理後台僅允許指定IP訪問
攔截所有對 /wp-admin 路徑的訪問請求,僅允許來自管理員 IP 位址192.1.XX.XX 的請求通過。
匹配條件:
匹配欄位為
IP、邏輯符為不屬於、匹配內容為管理員的白名單IP192.1.XX.XX。匹配欄位為
URI Path、邏輯符為包含、匹配內容為不希望被訪問的網頁路徑/wp-admin。
防護類型:存取控制。
規則動作:攔截。
測試白名單 IP 訪問網域名稱
僅允許某白名單 IP 訪問接入WAF的測試網域名稱,攔截其他所有公網流量。
匹配條件:
匹配欄位為
IP、邏輯符為不屬於、匹配內容為白名單 IP 位址段(如203.xx.xx.200/32)。匹配欄位為
Host、邏輯符為等於、匹配內容為測試網域名稱(如test.example.com)。
防護類型:存取控制。
規則動作:攔截。
攔截 Host 頭與網域名稱不匹配的請求
當請求的 Host 頭與業務合法網域名稱不匹配時,可使用以下規則攔截此類請求,以降低 CC 攻擊或惡意探測帶來的風險。
匹配條件:
匹配欄位:
Host。邏輯符:
不等於。匹配內容:填寫業務實際使用的合法網域名稱。
防護類型:存取控制。
規則動作:攔截。
屏蔽惡意爬蟲和掃描器訪問
在配置自訂規則時,可以參考以下常見的 User-Agent (UA) 特徵來輔助識別流量類型:
安全掃描工具: 如
sqlmap,nmap,nikto等(通常用於漏洞探測)。自動化指令碼/庫: 如
python-requests,Python-urllib,curl/,Wget/等(常用於指令碼調用或非瀏覽器訪問)。資料擷取爬蟲: 如
MJ12bot,AhrefsBot,SemrushBot等(SEO 分析或內容抓取)。主流搜尋引擎: 如
Googlebot,Baiduspider,bingbot等。移動端標識:如
Mobile、Android、iPhone、iPad等。
僅依賴 UA 欄位無法精準判定惡意流量(攻擊者常偽裝成正常瀏覽器 UA)。建議配置自訂規則時,結合 IP 信譽、訪問頻率及 WAF 日誌進行綜合研判,避免誤殺正常業務請求。
以下樣本表示攔截UA欄位中包含bot的HTTP請求。
匹配條件:匹配欄位為
User-Agent、邏輯符為包含、匹配內容為UA特徵bot。防護類型:存取控制。
規則動作:攔截。
為網頁啟用人機驗證,攔截高頻機器流量
對被惡意訪問的請求路徑(如/index.php)啟用JS驗證,在不影響正常瀏覽器訪問的前提下攔截自動化攻擊工具。
針對靜態頁面,可以設定JS驗證或滑塊驗證規則,以確保請求來源為可執行 JavaScript 的標準瀏覽器。此類驗證僅適用於同步請求,不適用於XMLHttpRequest、Fetch方法等非同步請求。
針對純後端服務間調用的API介面,不建議配置JS驗證。JS驗證依賴瀏覽器環境執行,而API調用方通常為服務端程式或自動化指令碼,無法解析並執行JavaScript代碼,這將導致合法請求被持續攔截。建議在配置匹配條件時,將API介面排除在JS驗證範圍之外。
匹配條件:匹配欄位為
URI Path、邏輯符為包含、匹配內容為/index.php。防護類型:存取控制。
規則動作:JS驗證或滑塊。
若需對所有請求路徑啟用 JS 驗證,可將匹配內容設定為 /。由於該配置的作用範圍涵蓋所有請求,建議遵循最小化配置原則,精確限定規則範圍,謹慎使用全域匹配。
API介面限流
對除example.com/api/pay介面外的所有介面啟用頻率控制,此處以所有API介面URI均包含/api 字串為例。
匹配條件:
匹配欄位為
URI Path、邏輯符為不等於、匹配內容為/api/pay。匹配欄位為
URI Path、邏輯符為包含、匹配內容為/api。
防護類型:頻率控制。
統計對象:IP。
統計時間長度(秒):10。
閾值(次):5。
黑名單生效範圍:僅作用於當前規則的匹配條件。
黑名單逾時時間:1800。
規則動作:攔截。
應用於生產環境
為避免影響正常業務,請勿在生產環境直接建立並啟用攔截動作的防護規則。建議遵循以下流程進行部署。
分析請求特徵:使用WAF安全報表與日誌,識別正常業務請求與惡意攻擊的特徵(如 IP、User-Agent、Header、URI 等)。如需計劃配置頻率控制規則,還需確定正常業務的請求頻率基準。
配置白名單:在建立自訂規則模板前,建議建立白名單規則,將可信IP加入白名單,防止可信請求被新規則誤攔截。
灰階測試:自訂規則建立完成後,可以使用以下三種方式,在部署到生產環境前進行觀察測試。
將規則應用於非生產環境進行測試。
將規則動作設定為觀察。
在進階設定中開啟規則灰階。
分析測試結果:運行一段時間後,觀察安全報表與日誌,查看命中規則的請求是否存在誤判。
應用至生產環境:確認誤判率在可接受範圍內後,將規則動作調整為目標動作,並應用於生產環境。
持續監控與最佳化:持續關注安全報表與日誌,根據業務變化和實際防護效果,動態調整和最佳化規則。
日常營運
管理防護模板
建立的防護模板預設開啟,可以在防護模板列表執行如下操作:
查看模板關聯的防護對象/組的數量。
通過模板開關,開啟或關閉模板。
為該模板建立規則。
編輯、刪除或複製防護模板。
單擊防護模板名稱左側的
表徵圖,查看該防護模板包含的規則資訊。
管理防護規則
建立的規則預設開啟。可以在規則列表執行如下操作:
查看規則ID、規則條件等資訊。
通過狀態開關,開啟或關閉規則。
編輯或刪除規則。
配額與限制
僅隨用隨付執行個體、訂用帳戶企業版和旗艦版執行個體支援滑塊驗證、頻率控制與進階設定功能。
單個防護規則最多可添加5個匹配條件。
選擇等於多值之一、包含多值之一等匹配條件邏輯符時,最多支援輸入50個匹配內容。若需匹配超過50個值,建議拆分為多條規則,或使用包含、正則匹配等方式替代。
當規則滿足以下任一條件時,即視為“進階規則”,對於訂用帳戶版WAF,僅企業版及以上版本支援進階規則。對於隨用隨付版 WAF,進階規則與基礎規則的計費標準不同,具體單價請參見隨用隨付計費說明。
規則類型為頻率控制。
使用了匹配欄位:Cookie、Content-Type、Content-Length、X-Forwarded-For、Body、Http-Method、File Extension、Filename、Server-Port、Header、Cookie Name、Body Parameter。
使用了邏輯符:正則匹配、正則不匹配。
使用了進階設定:規則灰階、生效時間模式。
常見問題
為什麼配置的規則不生效?
若配置的 WAF 自訂規則未按預期生效,或實際攔截數量明顯低於預期,建議按照以下維度進行系統性排查:
基礎配置與狀態檢查
防護對象關聯確認:核實自訂規則模板已正確添加,並成功關聯至具體的防護對象/組(如 ALB 執行個體、網域名稱等)。需確保該防護對象處於已生效狀態,否則規則無法下發執行。
模板與規則開關狀態:檢查防護模板的“模板開關”及具體規則的“狀態”是否均處於“開啟”狀態。任一開關處於關閉狀態,均會導致對應規則失效。
規則動作配置:確認規則的“規則動作”已設定為非“觀察”。“觀察”動作僅用於記錄日誌,不會對請求執行阻斷操作。
匹配條件與邏輯校正
匹配條件準確性:全面檢查規則的匹配欄位、邏輯符及匹配內容是否能被目標請求正確匹配。若使用Regex,需嚴格核對逸出字元的書寫規範。
動態路徑匹配策略:若目標路徑包含動態產生的隨機片段(如隨機參數或隨機 ID),建議匹配欄位選擇
URI Path並使用包含邏輯符,僅匹配路徑中固定不變的特徵字串。避免匹配完整路徑,以免因路徑動態變化導致規則無法命中。要求標頭欄位缺失處理:針對
Referer、User-Agent等可能缺失的要求標頭欄位,需注意“該欄位值為空白”與“該欄位不存在於要求標頭中”屬於兩種不同的邏輯狀態。建議同時配置這兩種邏輯符對應的條件,避免因狀態遺漏導致規則未命中。
規則優先順序與觸發條件
其他規則優先順序排查:確認是否配置了其他防護規則或防護模組。例如,若配置了白名單規則,請求可能會被提前允許存取,從而繞過當前的攔截規則。
頻率控制響應碼條件:若配置的是頻率控制規則且啟用了響應碼檢測條件,規則的觸發要求統計對象在統計周期內必須同時滿足“訪問頻率閾值”和“響應碼特徵”兩個條件。需確認來源站點針對相關請求實際返回了配置中指定的響應碼(如 404),否則即使訪問頻率達到閾值,規則亦不會被觸發。
雲產品接入方式下,多個網域名稱解析指向了一個雲產品執行個體,如何配置頻率控制?
頻率控制規則按照防護對象維度來限制同一統計對象的請求頻率。若一個雲產品執行個體包含多個網域名稱的流量,則統計訪問頻率時將對所有網域名稱的訪問量進行匯總統計。若只需限制對某個網域名稱的訪問頻率,可以選擇以下兩種方式之一進行配置:
將網域名稱添加為WAF的防護對象,並為該網域名稱對象應用頻率控制規則。更多資訊,請參見配置防護對象和防護對象組。
在頻率控制規則的匹配條件中,通過Host欄位定義要限制訪問頻率的網域名稱。
配置自訂規則匹配欄位Body Parameter後為何不生效?
可能原因是填寫的匹配內容長度過短,使用Body Parameter欄位時請確保匹配內容長度>=5個字元,否則流量無法被檢測。
業務在夜間的正常訪問流量極少,如何防護夜間的攻擊?
針對夜間正常訪問流量極少的業務情境,可通過配置更嚴格的防護規則來抵禦攻擊。具體操作為:將規則的生效模式設定為按周期生效,並準確選擇對應時區,以實現對夜間時段的精準防護。
若業務不涉及特定地區的使用者(例如僅面向國內提供服務),還可以通過配置設定地區封鎖規則,直接攔截來自特定地區的訪問請求,以阻斷異常流量。
如何配置在攔截全部請求的基礎上僅允許存取特定請求?
特定請求允許存取與全量攔截配置邏輯
WAF自訂規則的匹配邏輯為“命中即觸發”,不支援直接配置“僅允許存取指定請求、攔截其餘全部”的正向白名單。若需實現“僅允許存取特定請求,攔截其餘所有請求”的安全性原則,應採用“攔截所有不匹配請求”的逆向邏輯進行間接配置。具體配置方法可參考限制管理後台僅允許指定IP訪問。
WAF 與Cloud Firewall ACL 的設計邏輯差異
WAF 與Cloud Firewall ACL、ECS 安全性群組在防禦模型上存在本質區別:
Cloud Firewall ACL:基於固定且可枚舉的“業務意圖”配置。例如,限制內部資料庫僅允許特定應用伺服器 IP 訪問。採用“全 0 禁止 + 白名單允許存取”策略,可精準收斂網路暴露面。
WAF:基於特徵與行為進行防禦,主要處理 HTTP/HTTPS 協議請求。Web 應用程式流量具有高度複雜性,包含大量動態請求及使用者互動行為。若在 WAF 採用“全 0 禁止 + 白名單允許存取”策略,需窮舉所有合法請求特徵(如 URL、參數、Header 等)。該操作不僅難以實現,且維護成本極高。
WAF 精細化防護策略建議
鑒於上述差異,不建議在 WAF 全量配置“攔截所有、允許存取特定”規則,應採用以下精細化配置策略:
精準存取控制:針對管理後台、核心 API 介面等敏感路徑,配置基於 IP、User-Agent 或特定 Header 的精準訪問防護規則,實施嚴格的存取控制。
常態化規則防護:對於面向公眾的常規業務流量,應依賴 WAF 的Web核心防護規則及CC 防護等模組,識別並阻斷已知攻擊特徵與異常行為,而非採用全量攔截。
動態策略調優:定期分析 WAF 防護事件記錄,根據業務流量變化與攻擊態勢,持續迭代和調優存取控制規則,確保安全防護與業務可用性的平衡。
如何通過內含項目關聯性減少重複規則配置?
當匹配欄位選擇 URI Path、邏輯符選擇 包含 時,只要請求路徑的任意位置出現指定字串,請求即可命中。
配置樣本: 若匹配內容填寫 /resources/author/,可同時匹配 /cn/resources/author/、/en/resources/author/ 等多語言路徑。
適用情境: 對於具有相同固定路徑片段的多級目錄或多語言網站,使用此配置方式可有效減少重複規則的建立。