程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 用php實現讓頁面只能被百度gogole蜘蛛訪問的方法

用php實現讓頁面只能被百度gogole蜘蛛訪問的方法

編輯:關於PHP編程

普通用戶與搜索引擎蜘蛛爬行的區別在於發送的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);

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved