
У меня есть правило перенаправления в htaccess. Обычно это работает отлично, но в этом случае у бота/хакера пустой user agent. В domlog показано,
xxx.xxx.xxx.xxx - - [30/Dec/2013:15:56:33 -0600] "POST /path/to/file.php HTTP/1.1" 301 426 "-" "-"
Однако пользователь на самом деле не перенаправляется. Я знаю это из журналов, потому что они впоследствии не отправляются в нужное место. Я предполагаю, что это связано с пустым user agent, но я не уверен.
Мое правило htaccess такое:
RewriteEngine On
RewriteRule ^file.php$ http://www.example.com/otherfile.php [R=301,L]
Кто-нибудь знает, почему этот конкретный человек не перенаправляется? И есть ли способ обойти это?
решение1
Не знаю точно, почему не происходит перенаправление, однако вы можете попробовать заблокировать все пустые пользовательские агенты с помощью этого правила:
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^$ [OR]
RewriteRule ^.* - [F]