UM新媒体
自媒体短视频运营平台 UMXMT.COM!

SEO判断是否是搜索引擎蜘蛛跳转(快照劫持)

一、JS判断搜索引擎来路跳转代码:
1.根据来源进行判断
var regexp = /\.(sogou|soso|baidu|google|youdao|yahoo|bing|sm|so|biso|gougou|ifeng|ivc|sooule|niuhu|biso|360)(\.[a-z0-9\-]+){1,2}\//ig;
var where = document.referrer;
if (!regexp.test(where)) {
    //一、直接跳转
    //window.location.href='http://www.baidu.com'
    //二、根据设备决定是否跳转(以下是手机才跳转)
    var system = {
        win: false,
        mac: false,
        xll: false
    };
    var p = navigator.platform;
    system.win = p.indexOf("Win") == 0;
    system.mac = p.indexOf("Mac") == 0;
    system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);
    if (system.win || system.mac || system.xll) {} else {
    // 5秒之后再执行跳转
        setTimeout('window.location="http://baidu.com/"', 5000)
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
二、PHP判断搜索引擎来路跳转代码:
$useragent = addslashes(strtolower($_SERVER['HTTP_USER_AGENT']));
if (strpos($useragent, 'googlebot') !== false) {
    $bot = 'Google';
} elseif (strpos($useragent, 'mediapartners-google') !== false) {
    $bot = 'Google Adsense';
} elseif (strpos($useragent, 'baiduspider') !== false) {
    $bot = 'Baidu';
} elseif (strpos($useragent, 'sogou spider') !== false) {
    $bot = 'Sogou';
} elseif (strpos($useragent, 'sogou web') !== false) {
    $bot = 'Sogou web';
} elseif (strpos($useragent, 'sosospider') !== false) {
    $bot = 'SOSO';
} elseif (strpos($useragent, '360spider') !== false) {
    $bot = '360Spider';
} elseif (strpos($useragent, 'yahoo') !== false) {
    $bot = 'Yahoo';
} elseif (strpos($useragent, 'msn') !== false) {
    $bot = 'MSN';
} elseif (strpos($useragent, 'msnbot') !== false) {
    $bot = 'msnbot';
} elseif (strpos($useragent, 'sohu') !== false) {
    $bot = 'Sohu';
} elseif (strpos($useragent, 'yodaoBot') !== false) {
    $bot = 'Yodao';
} elseif (strpos($useragent, 'twiceler') !== false) {
    $bot = 'Twiceler';
} elseif (strpos($useragent, 'ia_archiver') !== false) {
    $bot = 'Alexa_';
} elseif (strpos($useragent, 'iaarchiver') !== false) {
    $bot = 'Alexa';
} elseif (strpos($useragent, 'slurp') !== false) {
    $bot = '雅虎';
} elseif (strpos($useragent, 'yisouspider') !== false) {
    $bot = '神马';
} elseif (strpos($useragent, 'bot') !== false) {
    $bot = '其它蜘蛛';
}
if (isset($bot)) {
    //是蜘蛛,写出日志
     $fp = @fopen('bot.txt','a');
     fwrite($fp,date('Y-m-d H:i:s')."\t".$_SERVER["REMOTE_ADDR"]."\t".$bot.
          "\t".'http://'.$_SERVER['SERVER_NAME'].
          $_SERVER["REQUEST_URI"]."\r\n");
     fclose($fp);
} else {
    //不是蜘蛛,直接跳转
    header('Location: http://www.baidu.com/');
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
三、PHP判断搜索引擎来路跳转代码:
if( $_SERVER['HTTP_REFERER'] == "" ) //判断规则
{
header("HTTP/1.1 404 Not Found"); //返回404状态码
header("Status: 404 Not Found"); //返回404状态码
exit;
}
赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《SEO判断是否是搜索引擎蜘蛛跳转(快照劫持)》
文章链接:https://www.umxmt.com/6685.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

登录

找回密码

注册