這篇文章主要介紹了php基於curl主動推送最新內容給百度收錄的方法,分析了百度鏈接的提交方式及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 | |||
#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基於curl實作主動推送最新內容給百度收錄的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!