Linux之Apache下日志文件error.log过大的解决方法
2017-09-25 19:31
726 查看
如果网站开启了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 服务
我们通常的做法是在{$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 服务
相关文章推荐
- Apache下日志文件error.log过大的解决方法
- 解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题
- 清除error.log、access.log并限制Apache日志文件大小的方法
- 清除error.log、access.log并限制Apache日志文件大小的方法
- 清除error.log、access.log并限制Apache日志文件大小的方法
- Apache access.log error.log日志文件太大优化方法
- 清除error.log、access.log并限制Apache日志文件大小的方法
- 解决Linux下Tomcat日志目录下的catalina.log日志文件过大
- 解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题
- 清除error.log、access.log并限制Apache日志文件大小的方法
- 清除error.log、access.log并限制Apache日志文件大小的方法
- 清除error.log、access.log并限制Apache日志文件大小的方法
- 清除error.log、access.log并限制Apache日志文件大小的方法
- mysql-bin日志文件过大导致磁盘空间不足问题解决方法
- Apache启动错误Permission denied: httpd: could not open error log file解决方法
- MongoDB日志文件过大的解决方法
- Ubuntu 9.10 cpu 温度过高“Temperature/speed normal”,导致kern.log记录日志文件过大的解决办法
- 易信达 关于LOG日志过大的解决方法
- SQL日志文件过大问题的解决方法
- 解决:LNMP架构下nginx的error_log日志过大问题