相信很多站长遇到过这种情况:网站内的搜索功能被不良分子利用,通过在站内搜索框中不断搜索敏感关键词,产生一大批TITLE上带有敏感关键词的垃圾搜索结果页(如下图)。由于Baiduspider对每个站点的抓取额是有限定的,所以这些垃圾搜索结果页被百度收录,会导致其它有意义的页面因配额问题不被收录,同时可能因百度处理垃圾页面而影响网站正常排名。
具体的参考百度官方的页面http://zhanzhang.baidu.com/college/articleinfo?id=117
我给大家一个方法 我的思路
思路就是这样的 那些大佬们想做这个东西大部分还是要留QQ或者电话号码
那么我就匹配里面的规则 找出搜索里面的数字 然后判断数字字符串的长度 进而去判断 是否为垃圾搜索
奉上代码:
php" id="highlighter_700377">
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<?php
//@By 阳兄
function findNum( $str = '' ){ //取出字符串里面的所有数字
$str =trim( $str );
if ( empty ( $str )){ return '' ;}
$result = '' ;
for ( $i =0; $i < strlen ( $str ); $i ++){
if ( is_numeric ( $str [ $i ])){
$result .= $str [ $i ];
}
}
return $result ;
}
$the_lnum = strlen (findNum( $q )); //获取数字字符串长度
if ( $the_lnum >6){ //判断长度是否超过6 超过则直接301到搜索页面
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: http://" . $_SERVER [ 'HTTP_HOST' ]. "/search.php" );
exit ();
}
?>
|
以上所述就是本文的全部内容了,希望大家能够喜欢。