本文實例講述了php基於curl主動推送最新內容給百度收錄的方法。分享給大家供大家參考,具體如下:
php curl的好處可以以最快的方式並且模仿post提供我們的url地址給百度搜索引擎進行收錄。
百度鏈接提交三種方式:
1、主動推送:最為快速的提交方式,推薦您將站點當天新產出鏈接立即通過此方式推送給百度,以保證新鏈接可以及時被百度收錄。
2、sitemap:您可以定期將網站鏈接放到sitemap中,然後將sitemap提交給百度。百度會周期性的抓取檢查您提交的sitemap,對其中的鏈接進行處理,但收錄速度慢於主動推送。
3、手工提交:一次性提交鏈接給百度,可以使用此種方式。
下面介紹使用curl主動推送鏈接的方式PHP示例,使用curl擴展:
$urls = array( 'http://www.example.com/1.html', 'http://www.example.com/2.html', ); $api = 'http://data.zz.baidu.com/urls?site=www.dayecn.com&token=Db0ZoYUOwUyEp87Z'; $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode("\n", $urls), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); curl_setopt_array($ch, $options); $result = curl_exec($ch); echo $result;
首先要在百度站長平台驗證站點,然後獲取token密鑰,才有權限推送url給百度。百度站長平台:http://zhanzhang.baidu.com
可以在發布一篇文章的時候就把這篇文章的url推送給百度站長平台,或者批量推送,通過返回的$result狀態判斷推送是否成功,返回的狀態碼說明:
推送成功:
狀態碼為200,可能返回以下字段:
字段 是否必選 參數類型 說明 success 是 int 成功推送的url條數 remain 是 int 當天剩余的可推送url條數 not_same_site 否 array 由於不是本站url而未處理的url列表 not_valid 否 array 不合法的url列表
成功返回示例:
{ "remain":4999998, "success":2, "not_same_site":[], "not_valid":[] }
推送失敗:
狀態碼為4xx,返回字段有:
字段 是否必傳 類型 說明 error 是 int 錯誤碼,與狀態碼相同 message 是 string 錯誤描述
失敗返回示例:
{ "error":401, "message":"token is not valid" }
更多關於PHP相關內容感興趣的讀者可查看本站專題:《php curl用法總結》、《PHP數組(Array)操作技巧大全》、《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《PHP數據結構與算法教程》、《php程序設計算法總結》、《PHP數學運算技巧總結》、《php正則表達式用法總結》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。