1

Поисковый бот просматривает страницы на моем сайте с большим количеством странных параметров GET прямо сейчас. Например, ?x?, ?728%10%02, ?%18%9B%D9%DF%05 и т. Д. Я не знаю, где бот обнаружил, что URL-адреса, но это заставляет мой процессор курить, потому что система кэширования не обрабатывает URL-адреса с параметрами GET.Перенаправление для нежелательных параметров GET

У меня нет возможности изменять систему кеша, но я хочу перенаправить запросы с параметрами GET на тот же URL без параметров GET через .htaccess. Но у меня есть некоторые важные параметры GET, которые не будут перенаправлены. Это ?s=... для поиска по сайту и метки utm.

В заключение я хочу, чтобы перенаправить следующие адреса

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

и много других ПОЛУЧИТЬ PARAMS к

/some-url 

Но держать нетронутые URLs так:

/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

Смежные вопросы