笔者只会点最简单的html标签,无论是编程还是比较复杂的js语言一律看不懂。相信大神们看到“api”这三个字母时候就已经有一万种解决方法了,但对我来说没这么简单,都是从零逐渐试出来的,所以才有了这篇文章,希望大佬们勿喷。
我的网站程序采用的是迅睿CMS,在此感谢迅睿CMS提供的商业免费可用、并且非常强大的网站程序。网站有一个官方出的免费sitemap插件,这个插件最大的好处是可以实时更新sitemap文件,也就是说当你网站更新了、产生新链接之后,无需再去手动更新sitemap,一切都是自动的,这个功能也是自动提交sitemap的一个大的前提。
下面直接说步骤吧:
1. 配置好网站的sitemap插件,其中涉及到伪静态的部分直接照做就可以了,直到测试sitemap可以实时生成就好了。
2. 去百度资源搜索平台获取api,步骤:登录-顶部搜索服务-普通收录-右侧的API提交,下面有个“推送接口”,栏目下的URL就是我们要的API地址。
3. 去宝塔创建任务:登录宝塔-左侧“计划任务”-具体内容及说明如下:
任务类型:shell脚本
任务名称:自己添
执行周期:根据自己的更新周期,我是每天晚上自动提交
脚本内容(示例,token部分已隐藏,大家复制自己的就好):
内容详解:
(1)我的网站地址是https://www.668dai.com/,那么sitemap地址就是 https://www.668dai.com/sitemap.txt。需要注意的是,迅睿CMS的sitemap插件并不是真的在根目录下生成一个“sitemap.txt”的文件,但是访问目录之后的确能下载。
这一步是把sitemap文件下载至目录下,方便提交。因为每天都要下载提交一次,所以我用“-N”参数来自动覆盖旧文件。
(2)间隔5秒,单独拿出来说,是为了防止网络不稳定或者文件过大,导致下载困难的情况,一旦以后文件太大,没等下载完就自动提交上去,那很尴尬,具体时间大家可以根据情况修改。
(3)直接把百度给出的curl提交实例复制进去(token部分已隐藏,大家复制自己的就好)
设置好脚本内容之后在“任务列表”右侧点击“执行”跑一下看看,大概6-10秒之后打开日志,如果出现类似于
的字样,就说明成功了,只等sitemap按时自动提交就好;
如果失败了,比如success数量不对或者直接报错,那么有错误提示就按错误提示检查,没有就按照上面的详解逐步排查。
最后附一张我自己的设置图便于大家参考:
宝塔设置图