この記事では、WebサイトのアドレスをBaiduに自動でpingできるBaidu ping方法の例を中心に紹介しますので、ぜひ参考にしてください
メソッドを使用してアクセスするときに Baidu に自動的に ping を実行する 私の方法は、キャッシュを生成し、キャッシュを更新するときに Baidu に自動的に ping を実行することです。返される結果は 0 で、成功を示します。
コードは以下のように表示されます:
$pingarcurl='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$arcping = new Ping('スクリプト ホーム',$pingarcurl,get_domain(),'http://www.jb51.net');
$arcping->pingbaidu();
コードは以下のように表示されます:
クラスping{
private$title;//ブログ名
private$hosturl;//ブログのホームページのアドレス
private$arturl; //新しい記事のアドレス
private$rssurl;//ブログの RSS アドレス
private$baiduXML;//Baidu XML 構造
private$baiduRPC;//Baidu XML アドレス
publicfunction__construct($title,$arturl,$hosturl,$rssurl)
{
if(空($title)||空($arturl))
false を返します。
$this->title=$title;
$this->hosturl=$hosturl;
$this->rssurl=$rssurl;
$this->arturl=$arturl;
$this->baiduRPC='http://ping.baidu.com/ping/RPC2';
$this->baiduXML='';
$this->baiduXML.='
';
$this->baiduXML.='weblogUpdates.extendedPing';
$this->baiduXML.='';
$this->baiduXML.=''.$this->hosturl.'';
$this->baiduXML.=''.$this->title.'';
$this->baiduXML.=''.$this->arturl.'';
$this->baiduXML.=''.$this->rssurl.'';
$this->baiduXML.='';
$this->baiduXML.='';
}
publicfunctionpingbaidu()
{
$ch=curl_init();
$headers=配列(
'ユーザーエージェント:リクエスト',
'ホスト:ping.baidu.com',
'コンテンツタイプ: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);
カール_クローズ($ch);
//$res を返します;
return(strpos($res,"
0"))?true:false;
}
}
functionget_domain()
{
/*プロトコル*/
$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'];
}それ以外{
/*ポート*/
if(isset($_SERVER['SERVER_PORT'])){
$port=':'.$_SERVER['SERVER_PORT'];
if((':80'==$port&'http://'==$protocol)||(':443'==$port&'https://'==$protocol)){
$ポート='';
}
}それ以外{
$ポート='';
}
if(isset($_SERVER['SERVER_NAME'])){
$host=$_SERVER['SERVER_NAME'].$port;
}elseif(isset($_SERVER['SERVER_ADDR'])){
$host=$_SERVER['SERVER_ADDR'].$port;
}
}
戻り$プロトコル.$ホスト;
}
//$arc=newPing('ウェブサイトのタイトル','更新された URL アドレス','ウェブサイトのドメイン名','RSS アドレス');
//$arc=newPing('Web サイトのタイトル',get_arcurl($id),get_domain(),'http://www.abc.com/rss.php');
//echo$arc->pingbaidu();
//戻り結果は 0 で、成功を示します。
http://www.bkjia.com/PHPjc/730231.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/730231.html技術記事この記事では、Baidu への ping 方法の例を主に紹介します。アクセス時に Baidu に自動的に ping する方法を参照してください。