Linux之Apache下日志文件error.log过大的解决方法

如果网站开启了apache日志文件以及错误日志功能,那么很可能apache日志文件access.log在一段时间内就会很庞大至上百兆甚至几十个G,尤其大访问量的网站更是如此。error_log错误日志文件也会产生这样的情况,这样一来我们在分析apache日志的时候就会消耗很大的内存,那么有没有方法限制一下apache日志的大小呢?答案是肯定的.
我们通常的做法是在{$apache}/conf/httpd.conf中设置Apache的参数,然而我们并没有发现可以设置日志文件大小的配置指令,通过参考http://httpd.apache.org/docs/2.0/programs/rotatelogs.html,可以用apache 自己的程序 rotatelogs(位于 {$apache}/bin/目录下),来限制日志文件的大小.
在 Linux 下的设置例子如下:

打开 Apache 的 httpd.conf配置文件并找到下面两条配置

ErrorLog logs/error.log
CustomLog logs/access.log common

修改为下面的代码(路径请根据你的服务器设置修改)
# 限制错误日志文件为 1M
ErrorLog "|/server/apache/bin/rotatelogs /server/apache/logs/error-%Y-%m-%d.log 1M"

ErrorLog "|/www/wdlinux/apache/bin/rotatelogs /www/wdlinux/apache/logs/error-%Y-%m-%d.log 1M"  (wdcp面板适用)
# 每天生成一个错误日志文件
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 "|/www/wdlinux/apache/bin/rotatelogs /www/wdlinux/apache/logs/access-%Y-%m-%d.log 1M" common (wdcp面板适用)
# 每天生成一个访问日志文件
CustomLog "|/server/apache/bin/rotatelogs  /server/apache/logs/access-%Y-%m-%d.log 86400" common

在 Windows 主机设置下的设置例子如下(路径请根据你的服务器设置修改):
第一步:删除 Apache2/logs/目录下的 error.log、access.log文件

第二步:打开 Apache 的 httpd.conf配置文件并找到下面两条配置

ErrorLog logs/error.log
CustomLog logs/access.log common

直接注释掉,换成下面的配置文件。

# 限制错误日志文件为 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

最后重启Apache 服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值