迅睿CMS+宝塔+百度API自动提交sitemap

笔者只会点最简单的html标签,无论是编程还是比较复杂的js语言一律看不懂。相信大神们看到“api”这三个字母时候就已经有一万种解决方法了,但对我来说没这么简单,都是从零逐渐试出来的,所以才有了这篇文章,希望大佬们勿喷。

我的网站程序采用的是迅睿CMS,在此感谢迅睿CMS提供的商业免费可用、并且非常强大的网站程序。网站有一个官方出的免费sitemap插件,这个插件最大的好处是可以实时更新sitemap文件,也就是说当你网站更新了、产生新链接之后,无需再去手动更新sitemap,一切都是自动的,这个功能也是自动提交sitemap的一个大的前提。

下面直接说步骤吧:

一、配置好网站的sitemap插件,其中涉及到伪静态的部分直接照做就可以了,直到测试sitemap可以实时生成就好了。
二、去百度资源搜索平台获取api,步骤:登录-顶部搜索服务-普通收录-右侧的API提交,下面有个“推送接口”,栏目下的URL就是我们要的API地址。
三、去宝塔创建任务:登录宝塔-左侧“计划任务”-具体内容及说明如下:

任务类型:shell脚本

任务名称:自己添

执行周期:根据自己的更新周期,我是每天晚上自动提交

脚本内容(示例,token部分已隐藏,大家复制自己的就好):

wget -N https://www.668dai.com/sitemap.txt
sleep 5
curl -H 'Content-Type:text/plain' --data-binary @sitemap.txt "http://data.zz.baidu.com/urls?site=https://www.668dai.com&token=MiaoMiWangWangWang"

内容详解:

(1)我的网站地址是​ ​https://www.668dai.com/​​​,那么sitemap地址就是​ ​https://www.668dai.com/sitemap.txt​​。需要注意的是,迅睿CMS的sitemap插件并不是真的在根目录下生成一个“sitemap.txt”的文件,但是访问目录之后的确能下载。

这一步是把sitemap文件下载至目录下,方便提交。因为每天都要下载提交一次,所以我用“-N”参数来自动覆盖旧文件。

wget -N https://www.668dai.com/sitemap.txt

(2)间隔5秒,单独拿出来说,是为了防止网络不稳定或者文件过大,导致下载困难的情况,一旦以后文件太大,没等下载完就自动提交上去,那很尴尬,具体时间大家可以根据情况修改。

sleep 5

(3)直接把百度给出的curl提交实例复制进去(token部分已隐藏,大家复制自己的就好)

curl -H 'Content-Type:text/plain' --data-binary @urls.txt "http://data.zz.baidu.com/urls?site=https://www.668dai.com&token=MiaoMiWangWangW"

设置好脚本内容之后在“任务列表”右侧点击“执行”跑一下看看,大概6-10秒之后打开日志,如果出现类似于

{"remain":2916,"success":84}----------------------------------------------------------------------------
★[2022-09-02 23:30:07] Successful

的字样,就说明成功了,只等sitemap按时自动提交就好;

如果失败了,比如success数量不对或者直接报错,那么有错误提示就按错误提示检查,没有就按照上面的详解逐步排查。

最后附一张我自己的设置图便于大家参考:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值