利用宝塔面板计划任务执行自动推送网址到百度(多站点版)

使用该方法,可以实现每天自动推送网址到百度站长平台,下面博主将用PbootCMS来进行教程说明。

第一步:

在站点根目录新建一个PHP文件,例如:baidu.php,并复制下方代码添加到baidu.php文件中。

注意:两处需要修改的博主都已经在末尾添加了注释,记得修改为自己的,然后保存。

  1. <?php

  2. header('Content-Type:text/html;charset=utf-8');

  3. // ini_set('max_execution_time',600);//脚本超时,秒为单位,自己根据需要定义

  4. /** 多个站点只需在这里面新增数组 **/

  5. $data = array(

  6.     array(

  7.         'url' => 'https://www.ceccz.com/sitemap.xml',// 这里修改你站点的xml地图链接

  8.         'api' => 'http://data.zz.baidu.com/urls?site=https://www.ceccz.com&token=111111111'// 这里修改为你在百度站长获取到的推送接口

  9.     ),

  10.     array(

  11.         'url' => 'https://www.ceccz.com/sitemap2.xml',// 这里修改你站点的xml地图链接

  12.         'api' => 'http://data.zz.baidu.com/urls?site=https://www.ceccz.com&token=222222222'// 这里修改为你在百度站长获取到的推送接口

  13.     ),

  14. );

  15. /** 多个站点只需在这里面新增数组 **/

  16. foreach($data as $value){

  17.     echo '================================<br/>';

  18.     echo $value['url'].'<br/>';

  19.     post_Baidu($value['url'],$value['api']);

  20. }

  21. function post_Baidu($xml_url, $baidu_api) {

  22.     $xmldata =file_get_contents($xml_url);

  23.     $xmlstring = simplexml_load_string($xmldata,'SimpleXMLElement',LIBXML_NOCDATA);

  24.     $value_array = json_decode(json_encode($xmlstring),true);

  25.     $url = [];

  26.     for ($i =0;$i < count($value_array['url']);$i++){

  27.         // echo $value_array['url'][$i]['loc']."<br/>";

  28.         $url[]= $value_array['url'][$i]['loc'];

  29.     }

  30.     //百度推送接口一次只支持推送2000条数据,所以超过2000条的话需要分组推送

  31.     $url_group = array_chunk($url,2000);

  32.     $count=count($url_group);

  33.     for($i=0;$i<$count;$i++){

  34.         $ch = curl_init();

  35.         $options = array(

  36.         CURLOPT_URL => $baidu_api,

  37.         CURLOPT_POST => true,

  38.         CURLOPT_RETURNTRANSFER => true,

  39.         CURLOPT_POSTFIELDS => implode("\n",$url_group[$i]),

  40.         CURLOPT_HTTPHEADER => array('Content-Type:text/plain'),

  41.       );

  42.       curl_setopt_array($ch, $options);

  43.       $result =curl_exec($ch);

  44.       curl_close($ch);

  45.       echo $result.'<br/>';

  46.     }

  47. }

  48. ?>

利用宝塔面板计划任务执行自动推送网址到百度(多站点版)

有小伙伴留言或私信说他按教程来了但是报错:file_get_contents(): SSL operation failed with code 1

出现这种情况可以尝试关闭证书验证,既将上方第25行代码:$xmldata =file_get_contents($xml_url);替换为下方代码即可解决:

  1. // 忽略SSL验证

  2. $stream_opts = [

  3.     "ssl" => [

  4.         "verify_peer"=>false,

  5.         "verify_peer_name"=>false,

  6.     ]

  7. ];

  8. $xmldata =file_get_contents($xml_url, false, stream_context_create($stream_opts));

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

免责声明:本文系转载自互联网,版权归原作者所有;旨在传递信息,不代表中站源码网的观点和立场。如有侵权,请联系我们删除!qin@ceccz.com

中站源码网-网络情报局 CMS教程 利用宝塔面板计划任务执行自动推送网址到百度(多站点版) https://web.ceccz.com/cmsjc/4069.html

中站网

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议换浏览器下载!
查看详情

相关文章

评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

 
利用宝塔面板计划任务执行自动推送网址到百度(多站点版)-海报

分享本文封面