Проблемы с дублями htaccess

На сайте при вводе в адресную строку, например site.ru/?abrakadabra перенаправляет на главную страницу. Стоит задача сделать так, чтобы в таком случае переправлял на 404 ошибку. Пытался сделать следующим образом

RewriteCond %{QUERY_STRING} ^utm_source= [NC]
RewriteRule (.*) $1? [R=301,L]

Не особо понимаю в этой теме, буду рад любой подсказке


Ответы (1 шт):

Автор решения: pgood

В данном случае можно задать правило, которое будет переадресовывать любой урл с непустой динамической частью, которая не начинается с utm_source=, на 404-ю страницу. Также, надо понимать, по какому URL находится 404-я страница, в примере ниже я предположил, что она находится в файле 404.php в корне сайта.

RewriteCond %{QUERY_STRING} .+
RewriteCond %{QUERY_STRING} !^utm_source= [NC]
RewriteRule .* /404.php [R=301,L]
→ Ссылка