根据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 相关文章推荐
Javascript下判断是否为闰年的Datetime包
Oct 26 Javascript
PHP abstract与interface之间的区别
Nov 11 Javascript
jquery实现的简单二级菜单效果代码
Sep 22 Javascript
js中最容易被忽视的事件问题大总结
May 15 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
Apr 18 Javascript
js使用原型对象(prototype)需要注意的地方
Aug 28 Javascript
JS中offset和匀速动画详解
Feb 06 Javascript
node中modules.exports与exports导出的区别
Jun 08 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 Javascript
JS document form表单元素操作完整示例
Jan 13 Javascript
小程序瀑布流组件实现翻页与图片懒加载
May 19 Javascript
vue单元格多列合并的实现
Nov 26 Vue.js
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
PHP中将字符串转化为整数(int) intval() printf() 性能测试
2020/03/20 PHP
php使用百度天气接口示例
2014/04/22 PHP
PHPer 需要了解的 5 个 Composer 小技巧
2014/08/18 PHP
php准确计算复活节日期的方法
2015/04/18 PHP
AJAX PHP无刷新form表单提交的简单实现(推荐)
2016/09/09 PHP
php让json_encode不自动转义斜杠“/”的方法
2020/04/27 PHP
js清除input中type等于file的值域(示例代码)
2013/12/24 Javascript
javascript获取四位数字或者字母的随机数
2015/01/09 Javascript
jquery判断输入密码两次是否相等
2020/04/22 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
js实现自定义路由
2017/02/04 Javascript
three.js中3D视野的缩放实现代码
2017/11/16 Javascript
用node开发并发布一个cli工具的方法步骤
2019/01/03 Javascript
原生js添加一个或多个类名的方法分析
2019/07/30 Javascript
js tab栏切换代码实例解析
2019/09/03 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
2020/11/16 Javascript
python实现百度关键词排名查询
2014/03/30 Python
Python进行数据科学工作的简单入门教程
2015/04/01 Python
python与php实现分割文件代码
2017/03/06 Python
Python中使用遍历在列表中添加字典遇到的坑
2019/02/27 Python
如何使用Python实现自动化水军评论
2019/06/26 Python
pandas DataFrame创建方法的方式
2019/08/02 Python
在pytorch中对非叶节点的变量计算梯度实例
2020/01/10 Python
Tensorflow中批量读取数据的案列分析及TFRecord文件的打包与读取
2020/06/30 Python
Python如何定义有默认参数的函数
2020/08/10 Python
详解Django中异步任务之django-celery
2020/11/05 Python
HTML5新特性之用SVG绘制微信logo
2016/02/03 HTML / CSS
Kenneth Cole官网:纽约时尚优雅品牌
2016/11/14 全球购物
《小动物过冬》教学反思
2014/04/17 职场文书
银行职员自我鉴定
2014/04/20 职场文书
最美孝心少年事迹材料
2014/08/15 职场文书
免职通知
2015/04/23 职场文书
超市店长竞聘书
2015/09/15 职场文书
使用CSS定位HTML元素的实现方法
2022/07/07 HTML / CSS
Java Spring读取和存储详细操作
2022/08/05 Java/Android