时时商务社区

标题: 用php实现让页面只能被百度gogole蜘蛛访问的方法 [打印本页]

作者: bewin83    时间: 2018-2-14 09:01

            普通用户与搜索引擎蜘蛛爬行的区别在于发送的user agent,
看网站日志文件能发现百度蜘蛛名字包含Baiduspider, 而google的则是Googlebot, 这样我们可以通过判断发送的user agent来决定要不要取消普通用户的访问,编写函数如下:
[U]复制代码[/U] 代码如下:
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了,如下俩中调用方式:
[U]复制代码[/U] 代码如下:
if (!isAllowAccess()) {
exit("404 not found");
}
//或者
isAllowAccess(TRUE);
            
            
您可能感兴趣的文章:
  • phpsir 开发 一个检测百度关键字网站排名的python 程序
  • php+ajax做仿百度搜索下拉自动提示框(有实例)
  • PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
  • 用php实现百度网盘图片直链的代码分享
  • php获取从百度搜索进入网站的关键词的详细代码
  • php使用百度翻译api示例分享
  • php实现批量下载百度云盘文件例子分享
  • php使用百度天气接口示例
  • php生成百度sitemap站点地图类函数实例
  • PHP计算百度地图两个GPS坐标之间距离的方法
  • php实现计算百度地图坐标之间距离的方法
  • php+js实现百度地图多点标注的方法
            




    欢迎光临 时时商务社区 (http://bbs.4435.cn/) Powered by Discuz! X3.2