nginx多站点日志分割配置方法
摘要:文章目录索引(?) [-] 文章简介 适用范围及演示工具 nginx多站点日志分割配置方法 nginx多站点日志分割角本下载文章简介相信不少网友都是在linux系统中跑ngin...
发布日期:2018-04-25文章目录索引(?) [-]
- 文章简介 适用范围及演示工具 nginx多站点日志分割配置方法 nginx多站点日志分割角本下载
文章简介
相信不少网友都是在linux系统中跑nginx这个web服务器,它不象是apache或是iis,nginx的高性能的HTTP及反向代理服务器,向绝多数网站站长均选择了它,但是nginx有一个小小的缺点就是生成的网站日志文件无法象iis或是apache这些服务器一样自动分割,不过我们可以通过在linux系统中做一些简单的设置即可解决这个小缺点。
也许不少网友都先百度或谷歌搜索到不少类似的教程了,如果你已经熟悉linux或是已经非常熟练的配置这些了,就一笑而过吧。
本文主要是针对那些对linux系统不是很熟悉,或是菜鸟级别的新手站长们,本文就一步一步的说下如何在centos系统中进行nginx多站点日志分割配置的方法,只要按本文教程来,作者保存可用,如有不懂可直接留言。原文网址http://www.pc811.com/6/1/26142.html
适用范围及演示工具
适用范围:linux系统
演示系统:centos系统
演示版本:nginx1.0
nginx多站点日志分割配置方法
第1步:首先得在nginx中设置开启日志。
找到nginx自己网站的配置文件,检查access_log 后面是否为on,如为on,改为自己的log日志文件路径,如:access_log /usr/local/nginx/logs/www.pc811.com.log;电脑维修技术网注:这样就是把www.pc811.com的日志文件存到了/usr/local/nginx/logs/目录下,文件名为www.pc811.com.log。第2步:在本地电脑中新建个记事板,并向记事板里复制以下代码,并另存为“nginx_log.sh”文件。
电脑维修技术网注:本文作者这里有写好的,大家可直接下载,稍微再改一下路径什么的,都改成自己的即可。ps:sh就centos可运行的东东,个人认为相当于windows的.bat批处理。
- #!/bin/bash
- #指定nginx网站日志目录路径log_files_path="/usr/local/nginx/logs/"
- log_files_dir=${log_files_path}$(date-d"yesterday"+"%Y")/$(date-d"yesterday"+"%m")#指定网站日志文件名,多个网站日志用空格隔开,本文作者设置的全名是www.pc811.com,而这里就要写www.pc811.com,.log扩展名不要写进来了。
- log_files_name=(www.pc811.com)#指定nginx目录
- nginx_sbin="/usr/local/nginx/sbin/nginx"#设置日志保存时间
- save_days=30
- mkdir-p$log_files_dir
- log_files_num=${#log_files_name[@]}
- for((i=0;i<$log_files_num;i++));domv${log_files_path}${log_files_name[i]}.log${log_files_dir}/${log_files_name[i]}_$(date-d"yesterday"+"%Y%m%d").log
- done
- #删除旧日志find$log_files_path-mtime+$save_days-execrm-rf{}\;
- $nginx_sbin-sreload
第3步:使用xftp4工具登录到centos系统,登录成功后,把第2步写好的nginx_log.sh文件上传到centos中/root目录下。
电脑维修技术网注:上传后的完整路径就是/root/nginx_log.sh,需要说明的是这个完整路径第4步及每天定时启动时都会用到。
第4步:使用xshell4软件成功登录到centos系统,执行“/root/nginx_log.sh”。电脑维修技术网注:如果什么都没提示,大家可到自己的nginx日志文件夹中查看一下,就会发现一个以当前年份起名的文件夹,打开后就会发现一个当前月份的文件夹,再打开后就会发现一个名字为www.pc811.com_20130827.log类似这样的文件名,剩下的步骤就是定时每天一个时间就自动执行一次这个角本。第5步:在centos终端执行“crontab -e”命令。
第6步:在打开的窗口中按“I”键(进入到编辑模式),换一行输入“0 0 * * * /root/nginx_log.sh”代码,并按“ESC”键(退出编辑模式),输入“:wq”并确定(保存并退出)。
电脑维修技术网注:这个相当于Windows系统的计划任务功能,本文这里的0 0 * * * /root/nginx_log.sh意思就是0时0分时就执行/root/nginx_log.sh这个角本。ps:如我们需要在每天早晨7时58分执行这个角本的话,需要“58 7 * * * /root/nginx_log.sh”这个写,前面是分,后面是时。nginx多站点日志分割角本下载
百度网盘下载地址
下载失效时,大家可在评论时说下,到时会在评论中补发新的地址。
- 上一篇:玩转windows7快捷键
- 下一篇:Win7如何更改半透明窗口颜色