[root@tiejiang nginx]# mkdir data #cd /usr/local/nginx
[root@tiejiang data]# cat log_dele.sh
#!/bin/bash
#声明要切换的站点的日志的路径。
LOGPATH=/usr/local/nginx/logs/z.com.access.log
#准备备份在什么地方,并以月份为名称
BASEPATH=/usr/local/nginx/data/$(date -d yesterday +%Y%m)
#创建一个以月份为名称的文件夹
mkdir -p $BASEPATH
#用时间来给切割好的日志文件重命名
bak=$BASEPATH/$(date -d yesterday +%d%H%M).zcom.access.log
#把原来的日志文件,剪切以时间命名的文件
mv $LOGPATH $bak
#再重新创建一个新的z.com.access.log的文件
touch $LOGPATH
#然后给nginx重新发信号
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
[root@tiejiang data]# crontab -e
[root@tiejiang data]# crontab -l #分时日月周
*/1 * * * * sh /usr/local/nginx/data/log_dele.sh
有时候会发现网站的访问量急剧上升,心中一阵暗喜,但后来发现所有的访问量都来自于IP某某某某,这个时候你不要高兴。要不就是蜘蛛疯狂地爬你的网站,有时候蜘蛛疯狂地爬也能把一个网站爬崩溃的,蜘蛛很强大。还有一种情况就是来自于你的竞争对手的攻击,看你的网站很火,用两台机器不断地朝你的服务器/网站发送请求,就好比说这个人买了三部电话轮流拨你的手机,那你的手机疲于应付了,这不就是攻击你吗?要想分析谁攻击我,怎么防范,这个时候就得从日志着手,分析它的来源,以及它的请求的页面,看看是先把它的IP给封住,或者把它的请求、把特别敏感的页面给暂停啊等等。所以这就是关于它的日志的配置。
日志还牵涉到运维的工作,那这个日志哪里体现出运维了呢?如果我的网站访问量比较大,那有可能一个小时两个小时都积累很多了,一天下来这个日志得一个GB,一天一个GB的访问量一点不夸张。这个日志要是一直都存在一个文件里面,那肯定是:第一你后期不好处理日志,个个日志都十几个GB这么大你怎么处理啊。不好读啊,技术员一打开就卡死了。另外不好管理不好归档,希望每天的日志能按照日期备份,每天产生一个新日志,思路是: