關閉連線
關閉連線動作用於立即終止客戶端連線,不返回任何響應內容。此動作通常與條件規則配合使用,在滿足特定條件時快速阻斷請求。
請注意:頻繁使用此動作可能會影響正常使用者的訪問體驗,請確保關閉連線的規則設定得合理。
使用場景
- 安全防護:阻斷惡意請求或攻擊流量
- 訪問控制:對特定 URI 或 IP 進行訪問限制
- 資源保護:防止對敏感資源的未授權訪問
- 流量管理:在系統過載時快速拒絕部分請求
配置方式
在頁面規則中選擇"關閉連線"動作,通常需要配合條件使用:
- 設定觸發條件(如特定 URI、IP 地址、User-Agent 等)
- 選擇"關閉連線"作為執行動作
- 儲存並應用規則
行為特性
- 立即生效:連線會被立即關閉,不會處理後續請求內容
- 無響應返回:客戶端不會收到任何 HTTP 響應
- 等效狀態碼:此動作的效果與返回 444 狀態碼相同
- 資源節省:避免了生成和傳輸響應內容,節省伺服器資源
示例演示
$ curl http://test.com -v
* Trying 127.0.0.1:80...
* Connected to test.com (127.0.0.1) port 80 (#0)
> GET / HTTP/1.1
> Host: test.com
> User-Agent: curl/7.76.1
> Accept: */*
>
* Empty reply from server
* Closing connection 0
curl: (52) Empty reply from server
可以看到:
- 連線成功建立
- 請求傳送後立即被關閉
- 客戶端觸發"Empty reply from server"錯誤
- 沒有接收到任何 HTTP 響應內容