php 实时推送到百度Sitemap的解决办法
内容摘要
这篇文章主要为大家详细介绍了php 实时推送到百度Sitemap的简单示例,具有一定的参考价值,可以用来参考一下。
对【php版】实时推送到百度Sitemap 代码对此感兴趣的朋友,看看id
对【php版】实时推送到百度Sitemap 代码对此感兴趣的朋友,看看id
文章正文
这篇文章主要为大家详细介绍了php 实时推送到百度Sitemap的简单示例,具有一定的参考价值,可以用来参考一下。
对【php版】实时推送到百度Sitemap 代码对此感兴趣的朋友,看看idc笔记做的技术笔记!接口调用地址:http://ping.baidu.com/sitemap?site=www.xxx.com&resource_name=sitemap&access_token=XXXXXXX参数site 是 string 在站长平台验证的站点,比如www.example.comresource_name 你被允许推送的数据名称,比如RDF_BBS_Thread 或者 sitemapaccess_token 是 string 在站长平台申请的推送用的准入密钥
此方法仅适用于 已经开通了百度 sitemap 权限的站点 页面更新的时候 可以直接ping给百度。 可在百度后台查看反馈码
200 无使用方式错误,需要进一步观察返回的内容是否正确400 必选参数未提供405 不支持的请求方式,我们只支持POST方式提交数据411 HTTP头中缺少Content-Length字段413 推送的数据过大,超过了10MB的限制422 HTTP头中Content-Length声明的长度和实际发送的数据长度不一致500 站长平台服务器内部错误
/**
* 【php版】实时推送到百度Sitemap 代码
*
* @param
* @arrange 512-笔记网: www.idcnote.com
**/
function tobaidu($url){
$ntime=time();
$now = date('Y-m-d',$ntime);
$data ='<?xml version="1.0" encoding="UTF-8"?>';
$data .=' <urlset>';
$data .=' <url>';
$data .=' <loc><![CDATA['.$url.']]></loc>';
$data .=' <lastmod>'.$now.'</lastmod>';
$data .=' <changefreq>daily</changefreq>';
$data .=' <priority>0.8</priority>';
$data .=' </url>';
$data .=' </urlset>';
$pingurl=http://ping.baidu.com/sitemap?site=www.xxx.com&resource_name=sitemap&access_token=XXXXXXX; //你的接口地址
$curl = curl_init(); // 启动一个CURL会话
curl_setopt($curl, CURLOPT_URL, $pingurl); // 要访问的地址
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在
curl_setopt($curl, CURLOPT_USERAGENT, "curl/7.12.1"); // 模拟用户使用的浏览器
curl_setopt($curl, CURLOPT_COOKIE, $cookie);
curl_setopt($curl, CURLOPT_REFERER,"");
curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包
curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环
curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
$tmpInfo = curl_exec($curl); // 执行操作
if (curl_errno($curl)) {
echo 'Errno'.curl_error($curl);//捕抓异常
}
curl_close($curl); // 关闭CURL会话
return $tmpInfo; // 返回数据
}
$tt= tobaidu(https://www.idcnote.com/); //要实时推送的网址
echo $tt; //显示反馈码
/*** 来自php教程(www.idcnote.com) ***/
注:关于php 实时推送到百度Sitemap的简单示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释