当前位置: 首页 > 图文教程 > 网络编程 > PHP > 用php实现让页面只能被百度gogole蜘蛛访问的方法

PHP
php header 详细使用说明与使用心得
php利用header函数实现文件下载时直接提示保存
php $_SERVER当前完整url的写法
PHP 配置open_basedir 让各虚拟站点独立运行
PHP 程序员的调试技术小结
php 静态变量的初始化
php与XML、XSLT、Mysql的结合运用实现代码
php+javascript的日历控件
php 引用(&)详解
PHP小程序自动提交到自助友情连接
PHP 单引号与双引号的区别
PHP 递归效率分析
PHP 进程锁定问题分析研究
phplock(php进程锁) v1.0 beta1
php Memcache 中实现消息队列
MYSQL 小技巧 -- LAST_INSERT_ID
Ajax+PHP 边学边练 之二 实例
php 运行效率总结(提示程序速度)
Ajax PHP 边学边练 之三 数据库
在mysql数据库原有字段后增加新内容

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 92 ::
收藏到网摘: n/a

用php实现让页面只能被百度gogole蜘蛛访问的方法,需要的朋友可以参考下。 普通用户与搜索引擎蜘蛛爬行的区别在于发送的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);