我的网站越来越受欢迎,随着它越来越受欢迎,黑客也越来越多。
昨晚我访问了我的安全日志,发现每天大约有10个人试图访问
/?author=1
/?author=2
/?author=3
/?author=4
但我没有这些用户ID,所以会为它们生成404。他们还对用户名运行猜测机器人:
admin
administrator
wordpress
现在,我想控制他们。。。因此,每次他们尝试访问这两个选项中的任何一个:
1. visiting /?author=1..etc
2. trying to login with admin username
我希望他们的IP阻止我的网站,并重定向到youtube视频。
我知道第一个可以用。htaccess技巧,但不能悄悄地获得此技巧。第二个我想是由php完成的,但我没有Wordpress的经验,尽管我对php很在行。
最合适的回答,由SO网友:Howdy_McGee 整理而成
我知道这并不是你想要的,但这些黑客很可能是机器人,重定向他们根本不重要。如果你真的想修改,我想你可以修改下面的代码,但这会将任何寻找作者的人重定向回你的主页。
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{QUERY_STRING} ^/?author=([0-9]*) [NC]
RewriteRule ^(.*)$ http://%{HTTP_HOST}/? [L,R=301,NC]
SO网友:budiony
限制访问作者档案的解决方案.htaccess
规则做得相当不错。但是,并非每个人都可以编辑或访问.htaccess
, 尤其是在共享托管帐户上。下面的代码需要PHP版本5.3+。
以下是在WordPress级别处理该问题的解决方案。将此代码放入主题function.php
文件:
<?php
if ( ! is_admin() ) {
add_filter(
\'query_vars\',
function ( $public_query_vars ) {
foreach ( array( \'author_name\', \'author\' ) as $value ) {
$key = array_search( $value , $public_query_vars );
if ( false !== $key ) {
unset( $public_query_vars[$key] );
}
}
return $public_query_vars;
}
);
}
?>