bingbot 一直搜尋 wordpress 搜尋頁問題
由於 bingbot 不知為何一直搜尋 wordpress 網站的 search 頁。造成了該主機 cpu 升高的問題。其每天約 1 萬 5000 餘次。不代參數只用 GET 。個人估計是 bingbot 的問題。已經有點造成困擾所以請 ChatGPT 代寫了一段 htaccess 的程式碼來暫時解決問題。

文章大綱
ChatGPT 提示詞
我這邊用的是繁中的提示沒有其它多餘的文字。現階段的 ChatGPT 已可了解大部份的繁體中文語法。下方為實際的提示詞
用 htaccess 的寫法阻擋 user agent 為 bingbot 且使用 get protocol 且抓的 url 為 search 且 查詢字串為空 。
ChatGPT 回應
<IfModule mod_rewrite.c>
RewriteEngine On
# 條件 1:User-Agent 包含 "bingbot"
RewriteCond %{HTTP_USER_AGENT} bingbot [NC]
# 條件 2:使用 GET 方法
RewriteCond %{REQUEST_METHOD} GET
# 條件 3:URL 路徑中包含 "search"
RewriteCond %{REQUEST_URI} search [NC]
# 條件 4:沒有 query string(即沒有參數)
RewriteCond %{QUERY_STRING} ^$
# 動作:跳轉到首頁(可用 302 測試,確認無誤後改為 301)
RewriteRule ^.*$ / [R=302,L]
</IfModule>
把上方的程式碼貼到 htaccess 的文件最上方即可
結果
由於 bingbot 的連線需求在 apache 這邊已被擋掉轉成 302 的回應代碼。故不會再由 php-fpm 去執行程式。故 php-fpm 的行程跟主機 cpu 大幅下降。等行 bingbot 回復後再把新加的程式刪掉就可回到之前未設定的狀態。