Я пытаюсь 410 перенаправить с .htaccess
.
У меня есть несколько тысяч поддельных ссылок в индексе Google
все они начинаются с
http://example.com/?96ncajmj8anbvaaxomq
http://example.com/?6amdrg-bzzjna2ydgwj
http://example.com/?2ecpioijpxgsne_n1
http://example.com/?eamppu-smk2p3pjyvf0yn
, какой синтаксисиспользовать RewriteCond %{QUERY_STRING}
для перенаправления всех таких адресов на 410 (все, начиная с ?
)
RewriteCond% {QUERY_STRING} ^?
не работает
В логах apache я вижу только:
my_IP - - [24/Jan/2019:10:45:32 +0100] "GET /?fbdffdgfdgfdgdfg HTTP/1.1" 200 48308 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"
Кстати, в .htaccess также существует такое правило
RewriteEngone on
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=410,L]
для блокировки этой фальшивой ссылки
/ index.php? 01qpwrjvmr8kjv7e8
/ index.php? 01gkby5wbr-dlvqq
и работает нормально
есть также правило
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress