1

搜索bot正在我的網站上掃描頁面,現在有很多奇怪的GET參數。例如?x??728%10%02?%18%9B%D9%DF%05等。我不知道bot在哪裏發現了這個url,但它讓我的cpu冒煙,因爲緩存系統不會使用GET參數處理url。重定向不需要的GET參數

我無法修改緩存系統,但我想通過.htaccess將GET參數重定向到相同的URL。但是我有一些重要的GET參數不應該被重定向。它是?s=...用於網站搜索和utm標籤。

總之我想重定向以下網址

/some-url?x? 
/some-url?728%10%02 
/some-url?%18%9B%D9%DF%05 

和很多其他的GET PARAMS到

/some-url 

但保持不變的網址是這樣的:

/some-url?s=searh_term or 
/some-url?utm_campaign=my_campaign 

回答

1

如果你可以選擇一些GET參數,然後你可以在你的htaccess文件中檢查它們,r在沒有允許的參數的情況下轉發所有請求

RewriteEngine On 
# check that there is indeed a query string 
RewriteCond %{QUERY_STRING} ^.+$ 
# check that it doesn't start with one of allowed parameters 
RewriteCond %{QUERY_STRING} !^(utm_campaign|s|other|parameters|list)= [NC] 
RewriteRule ^(.*)$ /$1? [R=301,L] 
+0

完美!萬分感謝。 – Alexey