用php实现让页面只能被百度gogole蜘蛛访问的方法
作者:bea
普通用户与搜索引擎蜘蛛爬行的区别在于发送的user agent,看网站日志文件能发现百度蜘蛛名字包含Baiduspider, 而google的则是Googlebot, 这样我们可以通过判断发送的user agent来决定要不要取消普通用户的访问,编写函数如下: 代码如下: function isAllowAccess($directForbidden = FALSE) { $allowed = array('/baiduspider/i', '/googlebot/i
普通用户与搜索引擎蜘蛛爬行的区别在于发送的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);
有用 | 无用
看网站日志文件能发现百度蜘蛛名字包含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 编程安全性小结
- 基于Windows下Apache PHP5.3.1安装教程
- PHP5.3.1 不再支持ISAPI
- PhpMyAdmin中无法导入sql文件的解决办法
- 处理php自动反斜杠的函数代码
- php实现首页链接查询 友情链接检查的代码
- 用PHP查询搜索引擎排名位置的代码
- PHP 批量更新网页内容实现代码
- PHP 将图片按创建时间进行分类存储的实现代码
- PHP 采集获取指定网址的内容
- php 无极分类(递归)实现代码
- php 文件上传代码(限制jpg文件)
- php下将XML转换为数组
- PHP 巧用数组降低程序的时间复杂度
- 使用PHP获取网络文件的实现代码
- php中计算时间差的几种方法
- php 操作excel文件的方法小结
- PHP编程过程中需要了解的this,self,parent的区别
- php 学习笔记