百度ping方法使用示例 自動(dòng)ping百度
使用方法訪問的時(shí)候自動(dòng)ping到百度,我的方法是生成緩存,更新緩存的時(shí)候自動(dòng)ping百度,返回結(jié)果為0表示成功。
$pingarcurl='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$arcping = new Ping('腳本之家',$pingarcurl,get_domain(),'http://www.dhdzp.com');
$arcping->pingbaidu();
class ping{
private$title;//博客名稱
private$hosturl;//博客首頁地址
private$arturl;//新發(fā)文章地址
private$rssurl;//博客rss地址
private$baiduXML;//百度XML結(jié)構(gòu)
private$baiduRPC;//百度XML地址
publicfunction__construct($title,$arturl,$hosturl,$rssurl)
{
if(empty($title)||empty($arturl))
returnfalse;
$this->title=$title;
$this->hosturl=$hosturl;
$this->rssurl=$rssurl;
$this->arturl=$arturl;
$this->baiduRPC='http://ping.baidu.com/ping/RPC2';
$this->baiduXML='<?xmlversion=\"1.0\"encoding=\"UTF-8\"?>';
$this->baiduXML.='<methodCall>';
$this->baiduXML.='<methodName>weblogUpdates.extendedPing</methodName>';
$this->baiduXML.='<params>';
$this->baiduXML.='<param><value><string>'.$this->hosturl.'</string></value></param>';
$this->baiduXML.='<param><value><string>'.$this->title.'</string></value></param>';
$this->baiduXML.='<param><value><string>'.$this->arturl.'</string></value></param>';
$this->baiduXML.='<param><value><string>'.$this->rssurl.'</string></value></param>';
$this->baiduXML.='</params>';
$this->baiduXML.='</methodCall>';
}
publicfunctionpingbaidu()
{
$ch=curl_init();
$headers=array(
'User-Agent:request',
'Host:ping.baidu.com',
'Content-Type:text/xml',
);
curl_setopt($ch,CURLOPT_URL,$this->baiduRPC);
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
curl_setopt($ch,CURLOPT_POSTFIELDS,$this->baiduXML);
$res=curl_exec($ch);
curl_close($ch);
//return$res;
return(strpos($res,"<int>0</int>"))?true:false;
}
}
functionget_domain()
{
/*協(xié)議*/
$protocol='http://';
/*域名或IP地址*/
if(isset($_SERVER['HTTP_X_FORWARDED_HOST'])){
$host=$_SERVER['HTTP_X_FORWARDED_HOST'];
}elseif(isset($_SERVER['HTTP_HOST'])){
$host=$_SERVER['HTTP_HOST'];
}else{
/*端口*/
if(isset($_SERVER['SERVER_PORT'])){
$port=':'.$_SERVER['SERVER_PORT'];
if((':80'==$port&'http://'==$protocol)||(':443'==$port&'https://'==$protocol)){
$port='';
}
}else{
$port='';
}
if(isset($_SERVER['SERVER_NAME'])){
$host=$_SERVER['SERVER_NAME'].$port;
}elseif(isset($_SERVER['SERVER_ADDR'])){
$host=$_SERVER['SERVER_ADDR'].$port;
}
}
return$protocol.$host;
}
//$arc=newPing('網(wǎng)站標(biāo)題','更新的URL地址','網(wǎng)站域名','rss地址');
//$arc=newPing('你網(wǎng)站的title',get_arcurl($id),get_domain(),'http://www.abc.com/rss.php');
//echo$arc->pingbaidu();
//返回結(jié)果為0表示成功。
相關(guān)文章
阿里云PHP SMS短信服務(wù)驗(yàn)證碼發(fā)送方法
這篇文章主要介紹了阿里云PHP SMS短信服務(wù)驗(yàn)證碼發(fā)送方法,需要的朋友可以參考下2017-07-07
Laravel框架實(shí)現(xiàn)的批量刪除功能示例
這篇文章主要介紹了Laravel框架實(shí)現(xiàn)的批量刪除功能,結(jié)合實(shí)例形式分析了Laravel框架批量刪除功能相關(guān)的前端界面布局及后臺(tái)控制器實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-01-01
PHP開發(fā)中csrf攻擊的簡(jiǎn)單演示和防范
CSRF的全名為Cross-site request forgery,它的中文名為 跨站請(qǐng)求偽造(偽造跨站請(qǐng)求【這樣讀順口一點(diǎn)】)CSRF是一種夾持用戶在已經(jīng)登陸的web應(yīng)用程序上執(zhí)行非本意的操作的攻擊方式。相比于XSS,CSRF是利用了系統(tǒng)對(duì)頁面瀏覽器的信任,XSS則利用了系統(tǒng)對(duì)用戶的信任。2017-05-05
php視頻拍照上傳頭像功能實(shí)現(xiàn)代碼分享
現(xiàn)在手機(jī)拍照很火,那么如何使用手機(jī)拍照并上傳頭像呢?原因很簡(jiǎn)單,就是數(shù)據(jù)傳遞,首先手機(jī)傳遞照片信息,既不是post傳遞也不是get函數(shù)傳遞,這個(gè)另外一種數(shù)據(jù)格式傳遞,使用的是$GLOBALS ['HTTP_RAW_POST_DATA'],需要的朋友可以參考下2015-10-10

