重定向不适用于空白用户代理

重定向不适用于空白用户代理

我在 htaccess 中有一个重定向规则。这通常可以正常工作,但在这种情况下,机器人/黑客有一个空白的用户代理。domlog 显示,

xxx.xxx.xxx.xxx - - [30/Dec/2013:15:56:33 -0600] "POST /path/to/file.php HTTP/1.1" 301 426 "-" "-"

但是用户实际上并没有被重定向。我从日志中知道这一点,因为随后它们没有被发送到适当的位置。我假设它与空白用户代理有关,但我不确定。

我的 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]

相关内容