用php实现让页面只能被百度gogole蜘蛛访问的方法


Posted in PHP onDecember 29, 2009

普通用户与搜索引擎蜘蛛爬行的区别在于发送的user agent,
看网站日志文件能发现百度蜘蛛名字包含Baiduspider, 而google的则是Googlebot, 这样我们可以通过判断发送的user agent来决定要不要取消普通用户的访问,编写函数如下:

function isAllowAccess($directForbidden = FALSE) { 
$allowed = array('/baiduspider/i', '/googlebot/i'); 
$user_agent = $_SERVER['HTTP_USER_AGENT']; 
$valid = FALSE; 
foreach ($allowed as $pattern) { 
if (preg_match($pattern, $user_agent)) { 
$valid = TRUE; 
break; 
} 
} 
if (!$valid && $directForbidden) { 
exit("404 not found"); 
} 
  
return $valid; 
}

在要禁止访问的页面头部引用这个函数来做判断就ok了,如下俩中调用方式:
if (!isAllowAccess()) { 
exit("404 not found"); 
} 
//或者 
isAllowAccess(TRUE);
PHP 相关文章推荐
PHP4实际应用经验篇(9)
Oct 09 PHP
深入apache配置文件httpd.conf的部分参数说明
Jun 28 PHP
php+js实现图片的上传、裁剪、预览、提交示例
Aug 27 PHP
JS异常处理try..catch语句的作用和实例
May 05 PHP
在WordPress中使用wp_count_posts函数来统计文章数量
Jan 05 PHP
php使用ffmpeg获取视频信息并截图的实现方法
May 03 PHP
PHP经典算法集锦【经典收藏】
Sep 14 PHP
php使用GD2绘制几何图形示例
Feb 15 PHP
Yii2 批量插入、更新数据实例
Mar 15 PHP
Laravel框架搜索分页功能示例
Feb 01 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
Dec 31 PHP
tp5框架基于ajax实现异步删除图片的方法示例
Feb 10 PHP
PHP类的使用 实例代码讲解
Dec 28 #PHP
php 多线程上下文中安全写文件实现代码
Dec 28 #PHP
PHP 获取目录下的图片并随机显示的代码
Dec 28 #PHP
phpMyAdmin链接MySql错误 个人解决方案
Dec 28 #PHP
php 需要掌握的东西 不做浮躁的人
Dec 28 #PHP
php 文章采集正则代码
Dec 28 #PHP
PHP array_push 数组函数
Dec 26 #PHP
You might like
回答PHPCHINA上的几个问题:URL映射
2007/02/14 PHP
浅谈json_encode用法
2015/03/05 PHP
php操作MongoDB类实例
2015/06/17 PHP
浅谈php中include文件变量作用域
2015/06/18 PHP
php根据一个给定范围和步进生成数组的方法
2015/06/19 PHP
php 函数使用可变数量的参数方法
2017/05/02 PHP
解决出现SoapFault (looks like we got no XML document)的问题
2017/06/24 PHP
laravel 中如何使用ajax和vue总结
2017/08/16 PHP
apache集成php7.3.5的详细步骤
2019/06/20 PHP
PHP实现创建一个RPC服务操作示例
2020/02/23 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
2020/08/06 PHP
如何在Mozilla Gecko 用Javascript加载XSL
2007/01/09 Javascript
JavaScript 不只是脚本
2007/05/30 Javascript
JavaScript 对象模型 执行模型
2010/10/15 Javascript
Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
2016/03/23 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
JS判断数组那点事
2017/10/10 Javascript
validform表单验证的实现方法
2019/03/08 Javascript
Javascript 关于基本类型和引用类型的个人理解
2019/11/01 Javascript
JS插件amCharts实现绘制柱形图默认显示数值功能示例
2019/11/26 Javascript
[01:15]《辉夜杯》北京网鱼队巡礼
2015/10/26 DOTA
[01:10:57]Liquid vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:07:53]RNG vs VG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python urllib爬取百度云连接的实例代码
2017/06/19 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
2017/09/25 Python
浅谈flask截获所有访问及before/after_request修饰器
2018/01/18 Python
Python Xml文件添加字节属性的方法
2018/03/31 Python
python opencv实现图像边缘检测
2019/04/29 Python
如何通过python画loss曲线的方法
2019/06/26 Python
如何通过python实现人脸识别验证
2020/01/17 Python
乌克兰电子和家用电器商店:Foxtrot
2019/07/23 全球购物
大学教师年终总结的自我评价
2013/10/29 职场文书
《雷鸣电闪波尔卡》教学反思
2014/02/23 职场文书
学校2016年圣诞节活动总结
2016/03/31 职场文书
Kubernetes控制节点的部署
2022/04/01 Servers