Nginx

如何防止查詢字元串訪問嘗試,例如 /?hfsagrs=XXX

  • February 21, 2022

我是一個新站點所有者,沒有那麼多流量,但最近我的 NGINX 訪問日誌被請求淹沒,如下圖所示。

我試圖用塊中的模式阻止訪問,\?.*location它沒有效果。如何阻止這樣的請求並返回 444(“黑洞”請求)?

顯示此場景的 Nginx 日誌

出於隱私原因,IP 已被編輯

與 apache 重寫規則不同locationrewritenginx 指令都使用所謂的規範化URI(請參閱location指令文件以了解其含義),其中不包括查詢部分。您可以檢查$arg_hfsargsnginx 變數並在它不為空時關閉連接:

if ($arg_hfsargs) {
   return 444;
}

如果整個查詢字元串不為空,要關閉連接,您可以$args改為檢查變數。

引用自:https://serverfault.com/questions/1094289