WordPress 站点记得要防范恶意的搜索攻击

什么是恶意搜索攻击?这种恶意搜索攻击,其实非常简单,就是通过既定的网址结构不断对网站发起不良关键词搜索访问,比如 WordPress 的搜索网址结构为 域名/?s=搜索词,而且可能还会顺便将访问的地址推送到各大搜索引擎,加快这些恶意网址的收录。这样,你的网站就会沦为这些不法之徒传播不良信息的渠道,这对网站排名是非常不利的,甚至可能会直接被搜索引擎 K 站。

说白了,所谓的“恶意搜索攻击”就是借助 WordPress 站内搜索来优化某些长尾关键词的外链数量以达到提升搜索权重的一种黑帽 SEO 手段而已(如上图所示),如果网站管理员没有定期检查网站的情况,很可能就会遭殃。

那么如何应对这类恶意搜索攻击呢?办法有多种,大家自己选择一个比较适合自己的即可,下面给大家一一分享一下:

1、禁止搜索引擎收录搜索结果页

搜索结果页一般我们都不推荐被收录,所以建议大家还是禁止收录。现在几乎所有搜索引擎都遵循 robots.txt 的规则,也就是我们可以通过 robots.txt 定义规则,阻止搜索引擎收录搜索结果页面。我们可以在网站根目录,创建一个 robots.txt 文件,填入下面的内容:

Disallow: /?s=*

这样就禁止搜索引擎收录 WordPress 搜索结果页了。

但是这个方法有个不足之处就是一旦搜索引擎不遵循 robots 规则就没有作用了(国内不少搜索引擎就不遵守 robots 协议),所以这个办法明月的态度是仅供参考,聊胜于无了!

2、使用代码实现屏蔽搜索某些关键词

在当前主题目录下/wp-content/themes/主题名/functions.php 文件添加下列代码:

add_action('admin_init', 'ytkah_search_ban_key');
function ytkah_search_ban_key() {
add_settings_field('ytkah_search_key', '搜索关键词屏蔽', 'ytkah_search_key_callback_function', 'reading');
register_setting('reading','ytkah_search_key');
}
function ytkah_search_key_callback_function() {
echo '<textarea name="ytkah_search_key" rows="10" cols="50" id="ytkah_search_key" class="large-text code">' . get_option('ytkah_search_key') . '</textarea>';
}
add_action('template_redirect', 'ytkah_search_ban');
function ytkah_search_ban(){
if (is_search()) {
global $wp_query;
$ytkah_search_key = get_option('ytkah_search_key');
if($ytkah_search_key){
$ytkah_search_key = str_replace("\r\n", "|", $ytkah_search_key);
$BanKey = explode('|', $ytkah_search_key);
$S_Key = $wp_query->query_vars;
foreach($BanKey as $Key){
if( stristr($S_Key['s'],$Key) != false ){
wp_die('请不要搜索非法关键字');
}
}
}
}
}

然后进入WordPress网站后台设置——阅读——找到搜索关键词屏蔽添加您想屏蔽的搜索关键词,比如(恶意关键词1,恶意关键词2…),一行一个关键词

图片[1]-WordPress 站点记得要防范恶意的搜索攻击-玖零笔记

在后台(设置→阅读)中添加要屏蔽的关键词

保存之后,自己可以测试搜索下,效果如下图所示:

图片[2]-WordPress 站点记得要防范恶意的搜索攻击-玖零笔记

这个方法相对于第一个方法来说效果好了很多,但还是比较被动,需要站长及时发现和屏蔽关键词才可以,这就存在一个防不胜防的问题了,毕竟谁也没有时间和精力一天24个小时盯着这种事儿呀!

今天我也发现我网站被恶意刷关键词了,都是一些违规词。我在测试用着。有什么好的方法在分享

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容