利用宝塔面板计划任务执行自动推送网址到百度

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


第一步:

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

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

  1. <?php
    header('Content-Type:text/html;charset=utf-8');
    /** 只需修改这里面的两个链接 **/
    $xml_url = "https://bk.wzwz.net/sitemap.xml"; // 这里修改你站点的xml地图链接
    $baidu_api = 'http://data.zz.baidu.com/urls?site=https://bk.wzwz.net&token=123456789';// 这里修改为你在百度站长获取到的推送接口
    /***只需修改这里面的两个链接**/
    $xmldata =file_get_contents($xml_url);
    $xmlstring = simplexml_load_string($xmldata,'SimpleXMLElement',LIBXML_NOCDATA);
    $value_array = json_decode(json_encode($xmlstring),true);
    $url = [];
    for ($i =0;$i < count($value_array['url']);$i++){
        // echo $value_array['url'][$i]['loc']."<br/>";
        $url[]= $value_array['url'][$i]['loc'];
    }
    //百度推送接口一次只支持推送2000条数据,所以超过2000条的话需要分组推送
    $url_group = array_chunk($url,2000);
    $count=count($url_group);
    for($i=0;$i<$count;$i++){
        $ch = curl_init();
        $options = array(
           CURLOPT_URL => $baidu_api,
           CURLOPT_POST => true,
           CURLOPT_RETURNTRANSFER => true,
           CURLOPT_POSTFIELDS => implode("\n",$url_group[$i]),
           CURLOPT_HTTPHEADER => array('Content-Type:text/plain'),
        );
        curl_setopt_array($ch, $options);
        $result =curl_exec($ch);
        curl_close($ch);
        echo $result;
    }
    ?>


第二步:

登陆你们的宝塔面板,按照下图进行操作就完事。

QQ截图20220718175155.jpg


问:虚拟主机没有面板怎么办?

答:可以参考本博客PBCMS栏目的自动清理缓存和自动清理日志的思路,稍加判断使用前端来进行每天触发一次,不过似乎如果没人访问触发不了...

附:分享一条宝塔PBOOTCMS自动清理rumtime缓存目录的SHELL脚本 https://bk.wzwz.net/pbootcms/10142.html


THE END

文章版权:作者:刘小白  来源:htmlbk  

免责声明:本站提供的一切软件、插件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

本文最后更新于 2023-06-02 10:45:51,如果你的问题还没有解决,可以加入建站交流群和群友们一起讨论。

评论区