百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>服务器> 限制apache日志文件access.log大小方法详解
分享文章到:

限制apache日志文件access.log大小方法详解

发布时间:01/15 来源: 浏览: 关键词:
今天发现一个自己服务器D盘空间没有了,怪了200GB的空间又没放什么东西就安装了一个apache怎么会没了,查找才发现原理里面有一个access.log文件有190GB了,百度一下access.log是apache日志文件,果断删除了,那么为了不再出来此类问题我总结了一些限制apache日志文件大小方法,下面大家一起来看看。

用到apache自带的rotatelogs小工具

语法如下:

rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ]

参数解释:

-l :使用本地时间代替GMT时间作为时间基准。注意:在一个改变GMT偏移量(比如夏令时)的环境中使用-l会导致不可预料的结果。
logfile:它加上基准名就是日志文件名。如果logfile中包含”%”,则它会被视为用于strftime()的格式字符串;否则它会被自动加上以秒为单

位的”.nnnnnnnnnn”后缀。这两种格式都表示新的日志开始使用的时间。
rotationtime :日志文件滚动的以秒为单位的间隔时间。
offset :相对于UTC的时差的分钟数。如果省略,则假定为”0″并使用UTC时间。比如,要指定UTC时差为”-5小时”的地区的当地时间,则此参数

应为”-300″。

filesizeM :指定以filesizeM文件大小滚动,而不是按照时间或时差滚动。

例子:
1、按时间滚动日志文件:

 代码如下


错误日志:ErrorLog “|/data/apache/bin/rotatelogs 日志存放目录/%Y%m%d_error.log 86400 480″
访问日志:CustomLog “|/data/apache/bin/rotatelogs 日志存放目录/%Y%m%d_access.log 86400 480″ common

其中:

/data/apache:为apache的安装目录,根据自己实际情况确定;
86400:秒,24小时,表示生成的日志文件按天滚动,也就是每天生成一个日志文件;
480:分,时间偏移。
同理可以按小时滚动日志文件,每隔一个小时,几个小时。。。生成一个日志文件。

扩展:可以写个脚本定时删除日志文件,只保留几天的日志,如果网站访问量比较大,一天会生成几十上百M甚至更大的日志文件,既占硬盘又影响服务器性能。

2、按大小滚动日志文件:

 代码如下

错误日志:ErrorLog “|/data/apache/bin/rotatelogs -l 日志存放目录/%Y%m%d_error.log 5M”
访问日志:CustomLog “|/data/apache/bin/rotatelogs -l 日志存放目录/%Y%m%d_access.log 5M” common

当日志文件达到5M时,滚动该日志文件。

在 Windows 下的设置例子如下:

 代码如下

 
# 限制错误日志文件为 1M

ErrorLog "|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 1M"

# 每天生成一个错误日志文件

#ErrorLog "|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 86400"

# 限制访问日志文件为 1M

CustomLog "|bin/rotatelogs.exe -l logs/access-%Y-%m-%d.log 1M" common

# 每天生成一个访问日志文件

#CustomLog "|bin/rotatelogs.exe -l logs/access-%Y-%m-%d.log 86400" common

在 Linux 下的设置例子如下:

 代码如下

# 限制错误日志文件为 1M

ErrorLog "|/server/apache/bin/rotatelogs /server/apache/logs/error-%Y-%m-%d.log 1M"

# 每天生成一个错误日志文件

ErrorLog "|/server/apache/bin/rotatelogs /server/apache/logs/error-%Y-%m-%d.log 86400"

# 限制访问日志文件为 1M

CustomLog "|/server/apache/bin/rotatelogs  /server/apache/logs/access-%Y-%m-%d.log 1M" common

# 每天生成一个访问日志文件

CustomLog "|/server/apache/bin/rotatelogs  /server/apache/logs/access-%Y-%m-%d.log 86400" common

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有4人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板