apache运行自动生成access_log(访问日志)和error_log(错误日志)两种日志文件,这对于系统管理员或网站运营人员是非常有用的。
我安装的是centos,使用yum方式安装lamp环境的,日志文件位置:
/var/log/httpd/access_log是Apache服务器的访问日志文件
/var/log/httpd/error_log是Apache服务器的错误日志文件
如果把所有的访问日志都放在access_log,所有的错误日志都放在error_log文件,那么着两个文件肯定会很大,你打开日志的时间都会很长,别说看了,而且影响网站速度。我看了下php点点通,刚转到阿里云才几天,日志文件都有几十兆了,因此限制日志文件大小是很有必要的。
打开apache的配置文件:vi /etc/httpd/conf/httpd.conf
编辑:
#错误日志
#ErrorLog logs/error_log #注释,加上下面这行
ErrorLog "|rotatelogs /var/log/httpd/error_log%Y_%m_%d.log 86400 480" #每天生成错误日志
#访问日志
#CustomLog logs/access_log common #注释加上下面这样
CustomLog "|rotatelogs /var/log/httpd/access_log%Y_%m_%d.log 86400 480" common #每天生成访问日志
OK,重启apache,你就可以看到新生成的日志文件:
Apache如何每天生成独立日志文件(access_log和error_log)
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文件大小滚动,而不是按照时间或时差滚动。
转载请注明地址: http://www.phpddt.com/server/apache-access-error-log.html 尊重他人劳动成果就是尊重自己!