我们访问网站的时候会有记录留下来,这个就是日志文件,日志的信息有(来源ip,访问时间等信息)


1.在虚拟主机的配置文件中已经存在了日志文件的配置,我们只需要把它打开就可以


vi /usr/local/apache2/conf/extra/httpd-vhosts.conf


日志中有个common表示日志的格式,把它修改为combined


Apache分割日志_用户名

Apache分割日志_主机_02



2.可以修改日志的名称


修改为test.com-error_log

          test.com-access_log


默认日志路径在 /usr/local/apache2/logs/


Apache分割日志_虚拟_03



3.设置好后重启并重新加载


apachectl -t

apachectl graceful


4.刷新网页


进入日志目录查看是否生成了日志文件


cd /usr/local/apache2/logs/


ls 查看文件




cat test.com-access_log  可以查看访问日志消息


日志格式:LogFormat "%h %l %u %t %T \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""


%h 远端主机

%l 远端登录名

%u 远程用户名

%t 时间,用普通日志时间格式

%T 处理完请求所花时间,以秒为单位

%r 请求的第一行,动作

来源ip后面二个是不存在,所有用--表示(l:u:表示用户)



Apache分割日志_虚拟_04





5.查看日志文件的容量


wc -l test.com-access_log



为了使格式按时间排序应该如何做?


在虚拟主机日志配置文件里添加一些内容


CustomLog "| /usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/test.com-access_%Y%m%d_log 86400" combined


Apache分割日志_用户名_05


刷新网页,生成一个有日期的日志


Apache分割日志_用户名_06


修改日期,然后在刷新网页看是否有没有生成日志


date -s "2016-11-21 15:55:20"



Apache分割日志_虚拟_07


刷新网页,会生成一个新的日志文件



Apache分割日志_虚拟_08