用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 相关文章推荐
PHP中数组合并的两种方法及区别介绍
Sep 14 PHP
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
Jun 29 PHP
实现获取http内容的php函数分享
Feb 16 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 PHP
laravel安装和配置教程
Oct 29 PHP
PHP中addslashes与mysql_escape_string的区别分析
Apr 25 PHP
基于CI框架的微信网页授权库示例
Nov 25 PHP
PHP实现的redis主从数据库状态检测功能示例
Jul 20 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
Jul 30 PHP
PHP操作路由器实现方法示例
Apr 27 PHP
php实现 master-worker 守护多进程模式的实例代码
Jul 20 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
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
php 图片上传类代码
2009/07/17 PHP
PHP 反向排序和随机排序代码
2010/06/30 PHP
PHP简单计算两个时间差的方法示例
2017/06/20 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
2017/08/31 PHP
PHP基于swoole多进程操作示例
2019/08/12 PHP
ASP Json Parser修正版
2009/12/06 Javascript
javascript 拖放效果实现代码
2010/01/22 Javascript
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
2010/12/28 Javascript
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
纯JS实现的批量图片预览加载功能
2011/08/14 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
javascript操作字符串的原生方法
2014/12/22 Javascript
jQuery中Form相关知识汇总
2015/01/06 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
Angular获取手机验证码实现移动端登录注册功能
2017/05/17 Javascript
深入理解vuex2.0 之 modules
2017/11/20 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
详解性能更优越的小程序图片懒加载方式
2018/07/18 Javascript
VUE基于NUXT的SSR 服务端渲染
2018/11/30 Javascript
Javascript迭代、递推、穷举、递归常用算法实例讲解
2019/02/01 Javascript
bootstrap-table后端分页功能完整实例
2020/06/01 Javascript
Python使用pylab库实现画线功能的方法详解
2017/06/08 Python
教你用一行Python代码实现并行任务(附代码)
2018/02/02 Python
python pandas库中DataFrame对行和列的操作实例讲解
2018/06/09 Python
判断Threading.start新线程是否执行完毕的实例
2020/05/02 Python
python使用nibabel和sitk读取保存nii.gz文件实例
2020/07/01 Python
运动鞋、足球鞋和慕尼黑球衣:Sport Münzinger
2019/08/26 全球购物
Noon埃及:埃及在线购物
2019/11/26 全球购物
函授本科自我鉴定
2013/11/03 职场文书
绘画专业自荐信范文
2014/02/23 职场文书
操行评语大全
2014/04/30 职场文书
服务标语口号
2014/07/01 职场文书
超市促销活动总结
2014/07/01 职场文书
个人职业及收入证明
2014/10/13 职场文书
2014幼儿园班主任工作总结
2014/12/04 职场文书