一、问题描述
我们到百度site:你的网站域名 会看到很多其他信息,如下1,3,4条很显示是他人的非法信息。
通过对应的链接,你可以点击快照,发现收录的是别人的:
更有甚者,有的收录,你点击快照,跳转到你的网站,域名是你的,但是url链接被重新拼装了,类似这样:
http://你域名/?id=42347
等非法的拼装链接,访问你网站是正常的
二、问题分析
你服务器被黑了,需要杀毒了;你网站被挂木马了,需要查找程序木马。
三、解决方案
1、把你网站程序做好备份【程序+数据库】,备份的文件下载你本地电脑,并架设运行起来;
2、你所在的服务器需要安装杀毒软件行进杀毒,针对linux空间。推荐使用
ClamAV 操作非常简单而且杀毒率接近100%;
3、申诉百度快照;
点击“投诉快照”,按照提示输入信息即可。提示:若就个别个的需要投诉,是可以的,但是若比较多,这个就不推荐用了。
4、到百度搜索资源平台
https://ziyuan.baidu.com/crawltools
通过抓取分析有问题的链接,通过源码查看是否有问题。
若源码正常,则说明页面没有被挂马,或者这是被你清除后,但是百度收录还在。
若源码不正常,这个适合,你要根据不正常的内容,全站全文搜索下载下的源码,看有哪些页面被修改挂马。推荐工具:SR32.EXE
5、提交死链
6、智能化处理死链方案
思路:在入口判断url的合法性,不合法的url自动追加写入到你站点根目录下的silian.txt文件中。这个silian.txt就是提交给百度的【参看第五步】。
这个需要一定的编程基础,同时有一定的使用针对性。若你用的是thinkphp框架,需要智能处理死链url代码的可以私信大蔚老师。
以下代码仅供参考:
// print_r($_SERVER); //判断路径中包含 REQUEST_URI $url=$_SERVER['REQUEST_URI']; // echo $url; $domain = strstr($url, 'id='); $domain2 = strstr($url, '&'); $domain3 = strstr($url, '?'); $d4=strstr($url,'?s=/captcha&r=');//登录验证码排除 if(($domain||$domain2||$domain3)&&!$d4){ // print_r($_SERVER['HTTP_HOST']); //若有值 echo "路径不规范,404错误!"; //然后把这个路径写入到si.txt中,这个自动提交死链给百度。 $str="http://".$_SERVER['HTTP_HOST']."/".$_SERVER['QUERY_STRING']; $str=str_replace("s=/","",$str); $str="\r\n".str_replace("&","?",$str); $si=file_get_contents("silian.txt"); $c = strstr($si,$str); if(!$c){ //判断url是否存在,若存在 file_put_contents("silian.txt",$str, FILE_APPEND); } die; }