用php實現(xiàn)讓頁面只能被百度gogole蜘蛛訪問的方法
更新時間:2009年12月29日 00:08:10 作者:
用php實現(xiàn)讓頁面只能被百度gogole蜘蛛訪問的方法,需要的朋友可以參考下。
普通用戶與搜索引擎蜘蛛爬行的區(qū)別在于發(fā)送的user agent,
看網(wǎng)站日志文件能發(fā)現(xiàn)百度蜘蛛名字包含Baiduspider, 而google的則是Googlebot, 這樣我們可以通過判斷發(fā)送的user agent來決定要不要取消普通用戶的訪問,編寫函數(shù)如下:
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;
}
在要禁止訪問的頁面頭部引用這個函數(shù)來做判斷就ok了,如下倆中調(diào)用方式:
if (!isAllowAccess()) {
exit("404 not found");
}
//或者
isAllowAccess(TRUE);
看網(wǎng)站日志文件能發(fā)現(xiàn)百度蜘蛛名字包含Baiduspider, 而google的則是Googlebot, 這樣我們可以通過判斷發(fā)送的user agent來決定要不要取消普通用戶的訪問,編寫函數(shù)如下:
復(fù)制代碼 代碼如下:
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;
}
在要禁止訪問的頁面頭部引用這個函數(shù)來做判斷就ok了,如下倆中調(diào)用方式:
復(fù)制代碼 代碼如下:
if (!isAllowAccess()) {
exit("404 not found");
}
//或者
isAllowAccess(TRUE);
您可能感興趣的文章:
- php實現(xiàn)計算百度地圖坐標(biāo)之間距離的方法
- PHP計算百度地圖兩個GPS坐標(biāo)之間距離的方法
- php生成百度sitemap站點地圖類函數(shù)實例
- php+ajax做仿百度搜索下拉自動提示框(有實例)
- PHP獲取搜索引擎關(guān)鍵字來源的函數(shù)(支持百度和谷歌等搜索引擎)
- 用php實現(xiàn)百度網(wǎng)盤圖片直鏈的代碼分享
- php使用百度天氣接口示例
- php獲取從百度搜索進(jìn)入網(wǎng)站的關(guān)鍵詞的詳細(xì)代碼
- php使用百度翻譯api示例分享
- php實現(xiàn)批量下載百度云盤文件例子分享
- phpsir 開發(fā) 一個檢測百度關(guān)鍵字網(wǎng)站排名的python 程序
- php+js實現(xiàn)百度地圖多點標(biāo)注的方法
相關(guān)文章
jQuery+PHP發(fā)布的內(nèi)容進(jìn)行無刷新分頁(Fckeditor)
這篇文章主要介紹了jQuery結(jié)合,將Fckeditor發(fā)布的內(nèi)容進(jìn)行無刷新分頁,需要的朋友可以參考下2015-10-10PHP設(shè)置隨機(jī)數(shù)的方法小結(jié)
這篇文章主要介紹了PHP設(shè)置隨機(jī)數(shù)的方法,結(jié)合實例形式分析了php生成隨機(jī)數(shù)/生成隨機(jī)字符串的6種實現(xiàn)方法與相關(guān)操作注意事項,文中有詳細(xì)的代碼示例,需要的朋友可以參考下2023-09-09PHP 執(zhí)行系統(tǒng)外部命令 system() exec() passthru()
PHP作為一種服務(wù)器端的腳本語言,象編寫簡單,或者是復(fù)雜的動態(tài)網(wǎng)頁這樣的任務(wù),它完全能夠勝任。但事情不總是如此,有時為了實現(xiàn)某個功能,必須借助于操作系統(tǒng)的外部程序(或者稱之為命令),這樣可以做到事半功倍。2009-08-08