Shell脚本自动提交网站404死链到搜索引擎的方法

77生活网 免费教程来源:张戈博客Shell脚本自动提交网站404死链到搜索引擎的方法已关闭评论4,414阅读模式

最近在折网站主题,无意间看到了一篇文章,对于提交404页面有所帮助。通常来说大多数人认为换主题会影响SEO,实际上只要你把工作都做到位了,是没有任何问题的。比如,换主题后你得仔细检查标题和描述等内容是否发生改变、换主题后是否带来了大量的404页面等。当然,更细微的可能是换主题之后,网站的内链网络也发生了微妙的改变,但是整体的影响较小。

总之,张戈博客这次更换主题基本上没有看到明显的SEO影响,反而出现几个新的关键词。好了,题外话到此结束,下面分享一下从Nginx日志分析并生成能提交到搜索引擎的死链文件的Shell脚本。

一、前因后果

今天在看百度站长平台的抓取频次的时候,发现最近抓取次数有所下滑,并且平均响应时间也有所上升,感觉和最近频繁折腾主题以及访问量增加有所关系:

这个问题倒是好解决,等主题稳定了,页面静态缓存文件也就不会频繁被手工删除,整个网站的抓取响应时间应该就能回到正常水平。

再往下看,却发现网站抓取中出现的404数据也呈上升趋势:

实际上,张戈博客以前是手动提交过死链文件的,但后来没时间也就没去搭理更新了。看来这个工作还得重新做起来,并且实现自动化才行了。

二、Shell脚本

说做就做,简单的写了个 Shell 脚本就搞定了!

脚本名称:网站死链生成脚本

脚本功能:每天定时分析网站前一天的 nginx 日志, 然后提取状态码为404并且UA为百度蜘蛛的抓取路径,并写入到网站根目录下的 death.txt 文件,用于提交百度死链。

脚本代码

使用说明:

①、脚本适用于每天都做了日志切割的Nginx

②、将代码保存为 shell 脚本,比如 deathlink.sh,然后如下建立任务计划:

③、执行后,将在网站根目录生成死链文件:death.txt,可以浏览器访问看看内容

④、前往立即前往提交这个死链文件即可:

这样一来,系统会每天执行脚本,将昨天的百度蜘蛛爬到的404路径保存到网站根目录下的 death.txt,以备百度死链抓取工具前来抓取。

效果截图:

下面贴上这几天死链抓取(百度定时抓取,无需人工干预)及处理情况,效果还是非常明显的:

值得说明的是,这些死链记录是累加的,已保存的死链数据,就算百度蜘蛛不爬了也会继续保存,需要人工清理,不过一般不清理也没啥问题。

注意事项:

①、如果你的 nginx服务 并没有配置相应的 access 日志,请自行在 server 下添加所需网站的 access 日志,否则脚本无法使用;

②、脚本适用的access日志格式如下:

 

如果和你的不一样,则需要修改脚本中的awk指定的域(即$9、$15以及$7)。

三、其他拓展

①、如果你之前没有做过 Nginx 日志切割,那么可以直接用下面这个脚本来一次性搞定:

②、其他WEB服务器,比如 Apache 或 IIS,只要参考脚本思路,修改成实际的路径或日志字段,同样可以写一个相同功能的 Shell 或 Batch 脚本,有需求的朋友自己去研究折腾吧!

好了,本文暂时就分享这么多,希望对你有所帮助!

继续阅读
我的微信
微信扫一扫
weinxin
我的微信
你领一次红包多一份动力
支付宝搜索7503319领取
weinxin
我的公众号
 
77生活网