这个教程适用于Nginx用户及lnmp用户参考的参考,其他环境下,大叔不鸡道哈! 首先我们得用root 登陆执行 #!/bin/bash ############################################ log_files_num=${#log_files_name[@]} #cut nginx log files #delete 30 days ago nginx log files $nginx_sbin -s reload
#日志文件将会存放到/home/wwwlogs/年/月/日志文件名_年月日.log #设置要切割的日志的名字,如果日志目录下面的日志文件名为vpser.net.log,则填写vpser.net,每个日志名用空格分隔 #设置nginx文件的位置 #设置日志保存的时间,天 如果是非lnmp一键安装包用户可以通过修改上述参数适应你的nginx环境。
执行 crontab -e 进入vi编辑模式 在编辑模式下键入 i 进行编辑 输入: 00 00 * * * /bin/bash /root/cut_nginx_logs.sh 按Esc 再按 “:” 备注,这是小写的冒号 输入wq 回车 即可保存退出 日志自动切割脚本创建完成 每天会在0点自动执行 查询自动执行任务输入 crontab -l
附:输入 crontab -e 提示: crontab: command not found,只需要运行下面的命令安装 vixie-cron crontabs 即可: yum -y install vixie-cron crontabs 其中,vixie-cron 是cron的主程序;crontabs 是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序
/usr/local/nginx/conf/vhost/laozuo.org.conf 其次、用文本编辑器打开上述的文件,找到最下面的
access_log off; 将其替换为:
access_log /home/wwwlogs/laozuo.org.log laozuo.org; 然后将下面代码加到该conf顶部:
log_format laozuo.org '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" $http_x_forwarded_for'; 最后,重启LNMP
/root/lnmp restart 重启LNMP才可以生效,日志文件保存在home/wwwlogs文件夹下面,记得要定期删除,否则你的机器占用文件越来越大。
|