根据user-agent判断蜘蛛代码黑帽跳转代码(js版与php版本)


Posted in Javascript onSeptember 14, 2015

黑帽seo手段中有一个大家都在用的技巧,在服务端判断 客户端浏览器的user-agent然后做进一步操作,

网上一直都有人在用 这个代码 先是一个js代码 判断网站访客来路 如果是搜索引擎来的 就跳转 如果是直接访问则不变化 这段代码是从网上找来的 已经很久了 感谢原作者

<script language="javascript">
var pattern = /google/gi;
var pattern1= /yahoo/gi;
var keyValue=escape(document.referrer);
if (pattern.exec(keyValue))
setTimeout(
"windows.location='https://3water.com'",10*1000);
else if(pattern1.exec(keyValue))
setTimeout(
"window.location='https://3water.com'",10*1000);
</script>

如果是搜索引擎的user-agent则301跳转 目前网上好多欺骗友情链接的就是这个做法(代码会放在最后)

具体还有很多思路,跳转了,乔页等 今天仅把代码放出来 php的代码

声明 代码都是百度下来的 先写个简单的
根据php的 $_SERVER[‘HTTP_USER_AGENT']来进行判断

<?php
$tmp = $_SERVER['HTTP_USER_AGENT'];
if(strpos($tmp, 'Googlebot') !== false){
    echo '谷歌';
} else if(strpos($tmp, 'Baiduspider') >0){
    echo '百度';
} else if(strpos($tmp, 'Yahoo! Slurp') !== false){
    echo '雅虎';
} else if(strpos($tmp, 'msnbot') !== false){
    echo 'Msn';
} else if(strpos($tmp, 'Sosospider') !== false){
    echo '搜搜';
} else if(strpos($tmp, 'YodaoBot') !== false || strpos($tmp, 'OutfoxBot') !== false){
    echo '有道';
} else if(strpos($tmp, 'Sogou web spider') !== false || strpos($tmp, 'Sogou Orion spider') !== false){
    echo '搜狗';
} else if(strpos($tmp, 'fast-webcrawler') !== false){
    echo 'Alltheweb';
} else if(strpos($tmp, 'Gaisbot') !== false){
    echo 'Gais';
} else if(strpos($tmp, 'ia_archiver') !== false){
    echo 'Alexa';
} else if(strpos($tmp, 'altavista') !== false){
    echo 'AltaVista';
} else if(strpos($tmp, 'lycos_spider') !== false){
    echo 'Lycos';
} else if(strpos($tmp, 'Inktomi slurp') !== false){
    echo 'Inktomi';
}
?>

第二段带跳转的

<?php
$flag = false;
$tmp = $_SERVER['HTTP_USER_AGENT'];
if(strpos($tmp, 'Googlebot') !== false){
    $flag = true;
} else if(strpos($tmp, 'Baiduspider') >0){
    $flag = true;
} else if(strpos($tmp, 'Yahoo! Slurp') !== false){
    $flag = true;
} else if(strpos($tmp, 'msnbot') !== false){
    $flag = true;
} else if(strpos($tmp, 'Sosospider') !== false){
    $flag = true;
} else if(strpos($tmp, 'YodaoBot') !== false || strpos($tmp, 'OutfoxBot') !== false){
    $flag = true;
} else if(strpos($tmp, 'Sogou web spider') !== false || strpos($tmp, 'Sogou Orion spider') !== false){
    $flag = true;
} else if(strpos($tmp, 'fast-webcrawler') !== false){
    $flag = true;
} else if(strpos($tmp, 'Gaisbot') !== false){
    $flag = true;
} else if(strpos($tmp, 'ia_archiver') !== false){
    $flag = true;
} else if(strpos($tmp, 'altavista') !== false){
    $flag = true;
} else if(strpos($tmp, 'lycos_spider') !== false){
    $flag = true;
} else if(strpos($tmp, 'Inktomi slurp') !== false){
    $flag = true;
}
if($flag == false){
   header("Location: https://3water.com" . $_SERVER['REQUEST_URI']);
    // 自动转到https://3water.com 对应的网页
    // $_SERVER['REQUEST_URI'] 为域名后面的路径
    // 或 换成 header("Location: https://3water.com/abc/d.php");
   exit();
}
?>

第三段代码 是 判断后301跳转的

if (preg_match(“#(google|slurp@inktomi|yahoo! slurp|msnbot)#si”, $_SERVER['HTTP_USER_AGENT'])) {
 
header(“HTTP/1.1 301 Moved Permanently”);
header(“Location: http://www.saoyu.com/”);
exit;
 
}}

黑帽手段有风险 请慎用。如果中招的朋友感觉找后门。

Javascript 相关文章推荐
lib.utf.js
Aug 21 Javascript
jQuery 白痴级入门教程
Nov 11 Javascript
jQuery AJAX 调用WebService实现代码
Mar 24 Javascript
ECMAScript5中的对象存取器属性:getter和setter介绍
Dec 08 Javascript
JavaScript高级教程5.6之基本包装类型(详细)
Nov 23 Javascript
Angular.JS利用ng-disabled属性和ng-model实现禁用button效果
Apr 05 Javascript
微信小程序--onShareAppMessage分享参数用处(页面分享)
Apr 18 Javascript
JS简单判断滚动条的滚动方向实现方法
Apr 28 Javascript
BootStrap Table复选框默认选中功能的实现代码(从数据库获取到对应的状态进行判断是否为选中状态)
Jul 11 Javascript
JavaScript模块模式实例详解
Oct 25 Javascript
JS中async/await实现异步调用的方法
Aug 28 Javascript
Vue打包后访问静态资源路径问题
Nov 08 Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
Sep 14 #Javascript
js带缩略图的图片轮播效果代码分享
Sep 14 #Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
Sep 14 #Javascript
JS+DIV+CSS实现的经典标签切换效果代码
Sep 14 #Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
Sep 14 #Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
Sep 14 #Javascript
JS+CSS实现自动切换的网页滑动门菜单效果代码
Sep 14 #Javascript
You might like
解析yahoo邮件用phpmailer发送的实例
2013/06/24 PHP
jquery 简短右键菜单 多浏览器兼容
2010/01/01 Javascript
jquery multiSelect 多选下拉框
2010/07/09 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
JS运动基础框架实例分析
2015/03/03 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
2016/11/07 Javascript
js简单正则验证汉字英文及下划线的方法
2016/11/28 Javascript
Node.js 使用命令行工具检查更新
2017/06/08 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
vue 实现click同时传入事件对象和自定义参数
2021/01/29 Vue.js
[00:34]TI7不朽珍藏III——地穴编织者不朽展示
2017/07/15 DOTA
Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法
2016/04/23 Python
python处理xml文件的方法小结
2017/05/02 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
使用apidoc管理RESTful风格Flask项目接口文档方法
2018/02/07 Python
Python通过paramiko远程下载Linux服务器上的文件实例
2018/12/27 Python
django model通过字典更新数据实例
2020/04/01 Python
eBay德国站:eBay.de
2017/09/14 全球购物
Nike比利时官网:Nike.com (BE)
2019/02/07 全球购物
德国家具折扣店:POCO
2020/02/28 全球购物
综合素质的自我鉴定
2013/10/07 职场文书
应届生煤化工求职信
2013/10/21 职场文书
大学本科毕业生的自我鉴定范文
2013/11/19 职场文书
会计专业自荐信
2013/12/02 职场文书
大学生党课思想汇报
2013/12/29 职场文书
家长评语和期望
2014/02/10 职场文书
伊索寓言教学反思
2014/05/01 职场文书
项目经理任命书内容
2014/06/06 职场文书
验房委托书
2014/08/30 职场文书
永远跟党走演讲稿
2014/09/12 职场文书
节水宣传标语口号
2015/12/26 职场文书
七年级语文教学反思
2016/03/03 职场文书
销售会议开幕词
2016/03/04 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
python中pd.cut()与pd.qcut()的对比及示例
2022/06/16 Python