PHP判断搜索引擎蜘蛛并自动记忆到文件的代码


Posted in PHP onFebruary 04, 2012
function write_naps_bot(){ 
$useragent=get_naps_bot(); 
// echoExit($useragent); 
if ($useragent=="false") return FALSE ; 
date_default_timezone_set("Asia/Shanghai"); 
$date=date("Y-m-d H:i:s"); 
$ip=$_SERVER[REMOTE_ADDR]; 
$url="http://".$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI]; 
// echoExit($url);转载注明www.chhua.com 
if (!file_exists("./log/bot.html")){ 
$botfile=fopen("./log/bot.html", "w"); 
$fileHeader="<head> 
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /> 
<title>访问查看</title> 
</head> 
<a href=\"../?action=delbot\">删除日志</a><hr> 
"; 
// echoExit($botfile);转载注明www.chhua.com fputs($botfile, $fileHeader); 
fclose($botfile); 
}else 
{ $filesize=filesize("./log/bot.html"); 
if ($filesize>=100000){ 
$botfile=fopen("./log/bot.html", "w"); 
$fileHeader="<head> 
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /> 
<title>访问查看</title> 
</head> 
<a href=\"../?action=delbot\">删除日志</a><hr> 
"; 
fputs($botfile, $fileHeader); 
fclose($botfile); 
}else { 
$botfile=fopen("./log/bot.html", "a+"); 
} 
//$size="<b>当前文件大小为:</b>".$filesize."<br>";转载注明www.chhua.com 
$useragent="<b>USER:</b>".$useragent."<Br>"; 
$date="<b>TIME:</b>".$date."<Br>"; 
$ip="<b>IP:</b>".$ip."<Br>"; 
$url="<b>URL:</b><a href='$url' target='_blank'>".$url."</a><Br><Br>"; 
$fileStr=$useragent.$date.$ip.$url; 
fputs($botfile, $fileStr); 
fclose($botfile); 
} 
} 
function get_naps_bot() { 
$useragent = strtolower($_SERVER['HTTP_USER_AGENT']); 
if(strpos($useragent, 'googlebot') !== false){ 
return '<font color=blue>Googlebot</font>'; 
} 
if(strpos($useragent, 'msnbot') !== false){ 
return 'MSNbot'; 
} 
if(strpos($useragent, 'slurp') !== false){ 
return '<font color=green>Yahoobot</font>'; 
} 
if(strpos($useragent, 'baiduspider') !== false){ 
return '<font color=red>Baiduspider</font>'; 
} 
if(strpos($useragent, 'sohu-search') !== false){ 
return 'Sohubot'; 
} 
if(strpos($useragent, 'lycos') !== false){ 
return 'Lycos'; 
} 
if(strpos($useragent, 'robozilla') !== false){ 
return 'Robozilla'; 
} 
return "false"; 
}
PHP 相关文章推荐
在线短消息收发的程序,不用数据库
Oct 09 PHP
用php实现的获取网页中的图片并保存到本地的代码
Jan 05 PHP
php设计模式 Bridge (桥接模式)
Jun 26 PHP
使用PHPMyAdmin修复论坛数据库的图文方法
Jan 09 PHP
linux系统下php安装mbstring扩展的二种方法
Jan 20 PHP
zf框架的Filter过滤器使用示例
Mar 13 PHP
浅谈PHP调用Webservice思路及源码分享
Jun 04 PHP
php分页函数完整实例代码
Sep 22 PHP
CodeIgniter配置之database.php用法实例分析
Jan 20 PHP
针对多用户实现头像上传功能PHP代码 适用于登陆页面制作
Aug 17 PHP
Yii2实现多域名跨域同步登录退出
Feb 04 PHP
PHP const定义常量及global定义全局常量实例解析
May 28 PHP
PHP的博客ping服务代码
Feb 04 #PHP
Ping服务的php实现方法,让网站快速被收录
Feb 04 #PHP
PHP常用技巧总结(附函数代码)
Feb 04 #PHP
PHP语言中global和$GLOBALS[]的分析 之二
Feb 02 #PHP
php中global和$GLOBALS[]的分析之一
Feb 02 #PHP
PHP开发者常犯的10个MySQL错误更正剖析
Jan 30 #PHP
PHP中全面阻止SQL注入式攻击分析小结
Jan 30 #PHP
You might like
基于PHP常用函数的用法详解
2013/05/10 PHP
php生成二维码时出现中文乱码的解决方法
2014/12/18 PHP
Thinkphp和onethink实现微信支付插件
2016/04/13 PHP
利用php输出不同的心形图案
2016/04/22 PHP
Discuz不使用插件实现简单的打赏功能
2019/03/21 PHP
PHP7新功能总结
2019/04/14 PHP
Swoole4.4协程抢占式调度器详解
2019/05/23 PHP
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
在Html中使用Requirejs进行模块化开发实例详解
2016/04/15 Javascript
使用 Vue.js 仿百度搜索框的实例代码
2017/05/09 Javascript
vue router 跳转后回到顶部的实例
2018/08/31 Javascript
详解Vue改变数组中对象的属性不重新渲染View的解决方案
2018/09/21 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
2018/11/13 Javascript
js实现简单选项卡制作
2020/08/05 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
vue实现树状表格效果
2020/12/29 Vue.js
关于django 数据库迁移(migrate)应该知道的一些事
2018/05/27 Python
解决Pandas的DataFrame输出截断和省略的问题
2019/02/08 Python
详解python实现小波变换的一个简单例子
2019/07/18 Python
python将邻接矩阵输出成图的实现
2019/11/21 Python
keras 特征图可视化实例(中间层)
2020/01/24 Python
python GUI库图形界面开发之PyQt5信号与槽事件处理机制详细介绍与实例解析
2020/03/08 Python
python 日志模块 日志等级设置失效的解决方案
2020/05/26 Python
python统计mysql数据量变化并调用接口告警的示例代码
2020/09/21 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
2020/12/11 Python
详解HTML5常用的语义化标签
2019/09/27 HTML / CSS
竞聘演讲稿开场白
2014/08/25 职场文书
四风剖析查摆对照检查材料思想汇报
2014/09/24 职场文书
职称评定个人总结
2015/03/05 职场文书
证券公司客户经理岗位职责
2015/04/09 职场文书
2015年教师个人业务工作总结
2015/10/23 职场文书
装修安全责任协议书
2016/03/22 职场文书
python基于tkinter制作无损音乐下载工具
2021/03/29 Python
iSCSI服务器CHAP双向认证配置
2022/04/01 Servers
使用CSS自定义属性实现骨架屏效果
2022/06/21 HTML / CSS
css之clearfix的用法深入理解(必看篇)
2023/05/21 HTML / CSS