级别: 钻石会员
UID: 21692
精华:
37
发帖: 8411
财富: 18766019 鼎币
威望: 28001 点
贡献值: 9 点
会员币: 0 个
好评度: 4524 点
在线时间: 5(时)
注册时间: 2012-03-16
最后登录: 2024-03-10
|
0防止网站内部搜索被他人恶意利用!php屏蔽黑帽SEO的搜索关键字
;)*Drk*t, 相信很多站长遇到过这种情况:网站内的搜索功能被不良分子利用,通过在站内搜索框中不断搜索敏感关键词,产生一大批TITLE上带有敏感关键词的垃圾搜索结果页(如下图)。 z]pH'c39 由于Baiduspider对每个站点的抓取额是有限定的,所以这些垃圾搜索结果页被百度收录,会导致其它有意义的页面因配额问题不被收录,同时可能因百度处理垃圾页面而影响网站正常排名。 FD8Hx\oF K(hf)1q L))(g][; zc_3\N 我给大家一个方法 我的思路 1
OX(eXF> 思路就是这样的 那些大佬们想做这个东西大部分还是要留QQ或者电话号码 @YRBZ6FH 那么我就匹配里面的规则 找出搜索里面的数字 然后判断数字字符串的长度 进而去判断 是否为垃圾搜索 Yd9y8TqJ 奉上代码: I#0$5a},u^ [pre]<?php//@功能 屏蔽掉黑帽SEO的搜索关键字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();}?>[/pre] z\a#"2(G. YRl2e`&jt
|