百度ping接口 百度ping方法
使用方法 访问的时候自动ping到百度我的方法是 生成缓存,更新缓存的时候自动ping百度返回结果为0 表示成功。$pingarcurl=http://.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];$arcping = new Ping(青豆电子书
使用方法 访问的时候自动ping到百度
我的方法是 生成缓存,更新缓存的时候自动ping百度
返回结果为0 表示成功。
$pingarcurl='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$arcping = new Ping('青豆电子书',$pingarcurl,get_domain(),'http://www.qingdou.net/rss.php');
$arcping->pingbaidu();
我的方法是 生成缓存,更新缓存的时候自动ping百度
返回结果为0 表示成功。
$pingarcurl='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$arcping = new Ping('青豆电子书',$pingarcurl,get_domain(),'http://www.qingdou.net/rss.php');
$arcping->pingbaidu();
class ping{
private $title; //博客名称
private $hosturl; //博客首页地址
private $arturl; //新发文章地址
private $rssurl; //博客rss地址
private $baiduXML; //百度XML结构
private $baiduRPC; //百度XML地址
public function __construct($title,$arturl,$hosturl,$rssurl)
{
if(empty($title) || empty($arturl))
return false;
$this->title=$title;
$this->hosturl=$hosturl;
$this->rssurl=$rssurl;
$this->arturl=$arturl;
$this->baiduRPC='http://ping.baidu.com/ping/RPC2';
$this->baiduXML = '<?xml version=\"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>';
}
public function pingbaidu()
{
$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;
}
}
function get_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'];
} 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 = new Ping('网站标题','更新的URL地址','网站域名','rss地址');
//$arc = new Ping('你网站的title',get_arcurl($id),get_domain(),'http://www.abc.com/rss.php');
//echo $arc->pingbaidu();
//返回结果为0 表示成功。
- 上一篇:一个各种免费API接口
- 下一篇:php测试硬盘写速率
精彩图集
精彩文章






