0°

shell脚本自动提交死链

1825 个字符,0 张图片,大约需要 3 分钟阅读

因为删了很多的文章,所以死链一大堆一大堆的

就在网上翻,最后还是在张戈大神那里找到解决方法了

还有一种是修改你主题404页面的方法 《wordpress死链文件

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

注意,你的前一天日志格式必须为 域名_前一天的日期.log (与宝塔那日志自动切割是不兼容的)

#!/bin/bash
#Desc: Death Chain File Script
#Author: ZhangGe
#Blog: http://zhangge.net/5038.html
#Date: 2015-05-03
#初始化变量
#定义蜘蛛UA信息(默认是百度蜘蛛)
UA='+http://www.baidu.com/search/spider.html'
 
#前一天的日期(nginx日志)
DATE=`date +%Y-%m-%d -d "1 day ago"`
 
#定义日志路径
logfile=/home/wwwlogs/zhangge.net_${DATE}.log
 
#定义死链文件存放路径
deathfile=/home/wwwroot/zhangge.net/death.txt
 
#定义网站访问地址
website=http://zhangge.net
 
#分析日志并保存死链数据
for url in `awk -v str="${UA}" '$9=="404" && $15~str {print $7}' ${logfile}`
do
        grep -q "$url" ${deathfile} || echo ${website}${url} >>${deathfile}
done

下面这个包括了日志切割功能

#!/bin/bash
#Desc: Cut Nginx Log and Create Death Chain File
#Author: ZhangGe
#Blog: http://zhangge.net/5038.html
#Date: 2015-05-03
 
#①、初始化变量:
#定义access日志存放路径
LOGS_PATH=/home/wwwlogs
 
#定义蜘蛛UA信息(默认是百度蜘蛛)
UA='+http://www.baidu.com/search/spider.html'
 
#定义网站域名(需要先给相应的网站以域名形式配置了nginx日志,比如zhangge.net.log)
DOMAIN=zhangge.net
 
#定义前一天日期
DATE=`date +%Y-%m-%d -d "1 day ago"`
 
#定义日志路径
logfile=/home/wwwlogs/zhangge.net_${DATE}.log
 
#定义死链文件存放路径
deathfile=/home/wwwroot/zhangge.net/death.txt
 
#定义网站访问地址
website=http://zhangge.net
 
#②、Nginx日志切割
mv ${LOGS_PATH}/${DOMAIN}.log ${LOGS_PATH}/${DOMAIN}_${DATE}.log
kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'`
#可选功能: 自动删除30天之前的日志,可自行修改保存时长。
cd ${LOGS_PATH}
find . -mtime +30 -name "*20[1-9][3-9]*" | xargs rm -f
 
 
#③、网站死链生成(百度专用)
#分析日志并保存死链数据
for url in `awk -v str="${UA}" '$9=="404" && $15~str {print $7}' ${logfile}`
do
        grep -q "$url" ${deathfile} || echo ${website}${url} >>${deathfile}
done

 

除非注明,否则均为喵喵喵博客原创文章,转载请以链接形式标明本文地址

本文链接:https://www.miaomiaomiao.org/850.html

0 条回复 A 作者 M 管理员
    当上帝赐给你荒野时,就意味着,他要你成为高飞的鹰
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论